python爬虫代码示例
pythonimport requests
from bs4 import BeautifulSoup
def crawl_webpage(url):
# 发送 HTTP 请求获取网页内容
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 使用 BeautifulSoup 解析网页内容
soup = BeautifulSoup(response.text, 'html.parser')
# 获取网页标题并打印
print("网页标题:", soup.title.string)
# 获取所有链接并打印
print("所有链接:")
for link in soup.find_all('a'):
print(link.get('href'))
else:
print("请求失败,状态码:", response.status_code)
# 要爬取的网页 URL
url = "https://example.com"
crawl_webpage(url)
在这个示例中,首先我们发送一个 HTTP 请求来获取网页内容,然后使用 BeautifulSoup 来解析这个网页内容。我们从网页中提取标题和所有链接,并打印出来。在实际使用中,你可能需要根据具体的需求来扩展这个示例。例如,你可以解析更多的网页内容,或者将提取的数据保存到文件中。爬取网页时应该
好的,让我们
pythonimport requests
from bs4 import BeautifulSoup
def crawl_webpage(url):
# 添加请求头,模拟浏览器访问
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36'
}
try:
# 发送 HTTP 请求获取网页内容
response = requests.get(url, headers=headers)
# 检查请求是否成功
response.raise_for_status()
# 使用 BeautifulSoup 解析网页内容
soup = BeautifulSoup(response.text, 'html.parser')
# 获取网页标题并打印
print("网页标题:", soup.title.string)
# 获取所有链接并保存到列表中
links = [link.get('href') for link in soup.find_all('a')]
# 保存链接到文件
with open('links.txt', 'w', encoding='utf-8') as f:
for link in links:
f.write(link + '\n')
print("所有链接已保存到 links.txt 文件。")
except requests.RequestException as e:
print("请求出错:", e)
# 要爬取的网页 URL
url = "https://example.com"
crawl_webpage(url)
在这个改进后的示例中,我们添加了一个请求头来模拟浏览器访问,避免被服务器拒绝访问。使用 try-except 块来捕获异常,以防请求出错。还添加了一个功能,将提取的所有链接保存到一个文件中。这样,你就可以在文件中查看提取的链接,或者进一步处理这些链接。