python爬虫爬取豆瓣数据
时间: 2023-11-11 21:57:45 浏览: 114
可以使用Python的第三方库BeautifulSoup和requests来进行豆瓣数据的爬取。以下是一个简单示例代码:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://movie.douban.com/top250'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0;Win64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 发起请求
res = requests.get(url, headers=headers)
soup = BeautifulSoup(res.text, 'html.parser')
# 提取电影信息
for movie in soup.select('.item'):
title = movie.select_one('.title').text
rating = movie.select_one('.rating_num').text
print(title, rating)
```
这段代码通过发送HTTP请求获取豆瓣电影Top250页面的HTML内容,并使用BeautifulSoup库对HTML进行解析,然后提取出电影的标题和评分信息并打印出来。
相关问题
python爬虫爬取豆瓣数据源代码
以下是一个简单的Python爬虫爬取豆瓣电影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.36'
}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
# 解析数据
movies = soup.find_all('div', class_='info')
for movie in movies:
title = movie.find('span', class_='title').text.strip()
score = movie.find('span', class_='rating_num').text.strip()
quote = movie.find('span', class_='inq').text.strip()
print('电影名:', title)
print('评分:', score)
print('评价:', quote)
# 相关问题
1. 你可以解释一下代码中的requests和BeautifulSoup库吗?
2. 为什么要添加headers头部信息?
3. 如何将爬取到的数据保存到本地?
python爬虫爬取豆瓣
利用Python爬虫可以爬取豆瓣电影Top250的电影信息和电影下方的短评内容,评价人的IP地址及评价星级等内容,并生成相关Excel,将数据导入数据库。具体实现可以使用requests库来处理HTTP请求,BeautifulSoup库来解析HTML,以及pandas库来处理数据。需要注意的是,爬取网站信息时需要遵守相关法律法规和网站的爬虫规则,避免对网站造成不必要的影响。
阅读全文