python爬虫爬取网页数据
时间: 2023-09-06 20:09:21 浏览: 245
Python爬虫爬取网页信息
Python爬虫可以通过以下步骤来爬取网页数据:
1. 导入需要的库和模块,如requests、BeautifulSoup等。
2. 发送HTTP请求,获取网页内容。使用requests库中的get()函数,向目标网址发送GET请求,并将返回的响应内容保存到变量中。
3. 解析网页内容,提取所需数据。使用BeautifulSoup库中的find()、find_all()等函数,对网页内容进行解析,提取出需要的信息。
4. 存储数据。将提取出的数据存储到本地或数据库中,可以使用Python内置的文件操作函数或第三方库如pymysql、MongoDB等。
5. 循环爬取。如果需要爬取多个页面,可以使用循环结构,不断发送HTTP请求,获取并处理网页内容,直到爬取完所有页面为止。
6. 异常处理。在爬取过程中可能会出现各种异常,如网络连接中断、网页返回错误等,需要使用try-except语句对异常进行捕获和处理。
以下是一个简单的例子,爬取豆瓣电影TOP250的电影名称和评分:
```
import requests
from bs4 import BeautifulSoup
url = 'https://movie.douban.com/top250'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
for movie in soup.find_all('div', class_='hd'):
title = movie.a.span.text
rate = movie.parent.find('span', class_='rating_num').text
print(title, rate)
```
需要注意的是,爬虫行为可能会对网站的正常运行造成影响,所以在爬取数据时需要遵守网站的robots协议,不要过度频繁地访问同一网址,以免被封IP或拉入黑名单。
阅读全文