用python的requests和xpath和正则表达式爬取豆瓣电影top250每一个详情页的代码
时间: 2024-06-08 13:10:34 浏览: 115
以下是用 Python 的 requests、XPath 和正则表达式爬取豆瓣电影 Top250 每一个详情页的代码示例:
```python
import requests
from lxml import etree
import re
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'}
url = 'https://movie.douban.com/top250'
response = requests.get(url, headers=headers)
html = response.text
# 使用 XPath 获取每个电影详情页链接
selector = etree.HTML(html)
urls = selector.xpath('//div[@class="info"]/div[@class="hd"]/a/@href')
# 遍历每个电影详情页链接并提取相应信息
for url in urls:
response = requests.get(url, headers=headers)
html = response.text
# 使用 XPath 提取电影标题
selector = etree.HTML(html)
title = selector.xpath('//div[@id="content"]/h1/span[1]/text()')[0]
# 使用正则表达式提取电影评分
score_pattern = re.compile('<strong class="ll rating_num" property="v:average">(.*)</strong>')
score = re.findall(score_pattern, html)[0]
# 输出电影标题和评分
print('电影标题:', title)
print('电影评分:', score)
```
上述代码会输出每个电影的标题和评分。你可以根据自己的需要进一步提取其他信息。
阅读全文