用python写出一个爬取豆瓣电影代码
时间: 2023-09-28 21:04:22 浏览: 47
以下是使用Python的requests和BeautifulSoup库编写的简单豆瓣电影爬虫示例:
```python
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 Edge/16.16299'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
movie_list = soup.find_all('div', class_='hd')
for movie in movie_list:
title = movie.a.span.text.strip()
link = movie.a['href']
print(title, link)
```
解释:
1. 首先,我们定义了我们要爬取的URL和一个User-Agent头,因为我们希望豆瓣电影网站认为我们是一个真正的浏览器而不是一个爬虫。
2. 然后,我们使用requests库发送GET请求并传递headers头。
3. 我们将响应文本传递给BeautifulSoup构造函数,将其解析为BeautifulSoup对象。
4. 我们使用find_all方法从BeautifulSoup对象中提取所有具有类“hd”的div元素,这些元素包含电影标题和链接。
5. 对于每个电影,我们从标题中提取文本并从链接中提取URL,然后将它们打印出来。
注意:我们还可以使用正则表达式等其他方法来提取更多信息。此示例仅用于说明如何使用Python和BeautifulSoup库进行基本的Web爬虫。