鱼C论坛

 找回密码
 立即注册
查看: 643|回复: 6

[已解决]跟着零基础学习python第二版爬电影250遇到了问题,求解答!

[复制链接]
发表于 2020-4-10 13:14:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import requests
import bs4

r = requests.get('http://www.imdb.cn/IMDB250/')
soup = bs4.BeautifulSoup(r.text,"html.parser")
targets = soup.find_all('div',class_='ss-3 clear')
for each in targets:
    print(each.a.p.text)

因为豆瓣网爬不到了,获取网页然后.text是一个空列表,我就去爬了IMDB电影top250,跟着书上得步骤一步一步写出了如上得代码,但是问题出现了!无论如何,这段代码只能爬到第一部电影《肖申克得救赎》。我思考了很久尝试了很多次,发现target是一个列表,但是只有一个元素,虽然包含了整个网页得所有文本,但是一个元素不能迭代出每部电影得名字,是不是soup.find_all没用好啊,有没有爬电影250成功了得同学解救一下我啊……
最佳答案
2020-4-10 13:33:08
targets = soup.find_all('p',class_='bb')
这个就是每个电影的名字,你是要这个么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-10 13:26:19 | 显示全部楼层
爬豆瓣的时候,你是不是没有加headers?
加上试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-10 13:27:25 | 显示全部楼层
本帖最后由 suchocolate 于 2020-4-10 13:28 编辑

headers = {'user-agent': 'firefox'}
r = requests.get('http://www.imdb.cn/IMDB250/',headers=headers)
requests包默认headers的user-agent是python-requests,一般会被网站反扒,自己设置一个其他的,就不会被反扒了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-10 13:33:08 | 显示全部楼层    本楼为最佳答案   
targets = soup.find_all('p',class_='bb')
这个就是每个电影的名字,你是要这个么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-10 13:39:58 | 显示全部楼层
疾风怪盗 发表于 2020-4-10 13:33
targets = soup.find_all('p',class_='bb')
这个就是每个电影的名字,你是要这个么

成了!就是这样!原来可以直接查找子类啊,太厉害了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-10 13:44:44 | 显示全部楼层
qiuyouzhi 发表于 2020-4-10 13:26
爬豆瓣的时候,你是不是没有加headers?
加上试试

我等会试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-10 13:45:42 | 显示全部楼层
suchocolate 发表于 2020-4-10 13:27
headers = {'user-agent': 'firefox'}
r = requests.get('http://www.imdb.cn/IMDB250/',headers=headers) ...

刚看了爬虫隐藏得视频了,我等会试试爬豆瓣
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 05:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表