import requests
import re
#爬取十个页面
url="https://movie.douban.com/top250?start={}"
for i in range(10):
start = i * 25
a = url.format(start)
headers={"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Edg/92.0.902.55"}
r=requests.get(a,headers=headers)
b=r.text
# 解析网页
obj=re.compile(r'<li>.*?<div class="item">.*?<span class="title">(?P<name>.*?)</span>',re.S)
result=obj.finditer(b)
for it in result:
print(it.group("name"))
为什么这个python代码只能抓取豆瓣top250最后一页的内容
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注因为解析语句没有在for循环当中,下面这样就可以
有帮助,望采纳!#!/usr/bin/python # -*- coding: UTF-8 -*- """ @author: YangPC @QQ:327844761 @微信公众号:ewbang """ import requests import re # 爬取十个页面 url = "https://movie.douban.com/top250?start={}" for i in range(10): start = i * 25 a = url.format(start) headers = { "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Edg/92.0.902.55"} r = requests.get(a, headers=headers) b = r.text # 解析网页 obj = re.compile(r'<li>.*?<div class="item">.*?<span class="title">(?P<name>.*?)</span>', re.S) result = obj.finditer(b) for it in result: print(it.group("name"))本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用