文章目录
使用Python从网页中提取所有URL
抓取 是每个人从任何网站获取数据的一项非常重要的技能。 在本文中,我们将编写 Python 脚本来从网站中提取所有 URL,或者您可以将其保存为 CSV 文件。
所需模块:
- bs4 : Beautiful Soup(bs4) 是一个 Python 库,用于从 HTML 和 XML 文件中提取数据。 这个模块不是 Python 内置的。 要安装此类型,请在终端中输入以下命令。
pip install bs4
- requests : Requests 允许您非常轻松地发送 HTTP/1.1 请求。 这个模块也没有内置在 Python 中。 要安装此类型,请在终端中输入以下命令。
pip install requests
Python从网页中提取所有URL方法
- 导入模块
- 制作请求实例并传递到 URL
- 将请求传递给 Beautifulsoup() 函数
- 使用 ‘a’ 标签找到所有标签(’a href’)
示例 1:
import requests
from bs4 import BeautifulSoup
url = 'https://www.geeksforgeeks.org/'
reqs = requests.get(url)
soup = BeautifulSoup(reqs.text, 'html.parser')
urls = []
for link in soup.find_all('a'):
print(link.get('href'))
输出:
示例 2:
提取 URL 并保存为 CSV 文件。
import requests
from bs4 import BeautifulSoup
urls = 'https://www.pythonthree.com'
grab = requests.get(urls)
soup = BeautifulSoup(grab.text, 'html.parser')
# opening a file in write mode
f = open("test1.txt", "w")
# traverse paragraphs from soup
for link in soup.find_all("a"):
data = link.get('href')
f.write(data)
f.write("\n")
f.close()
输出:
总结
以上是晓得博客为你介绍的使用Python从网页中提取所有URL的全部内容,希望对你的Python学习有帮助。