网页爬虫 - python3 使用 bs4 抓取不到input里面的关键词

查看:243
本文介绍了网页爬虫 - python3 使用 bs4 抓取不到input里面的关键词的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

1、请求主页
2、主页第一条糗事进入,糗事详情
3、获取到该页后,进入下一个糗事
4、代码运行后,获取到的并不是下一条糗事,而是不存在这个页面中的糗事
说明:
1、不每页搜索保存,是因为有些糗事太差,怕获取不完整,还有图片等
2、贴出代码没有保存功能

import bs4,requests,os

url = 'http://www.qiushibaike.com'

#请求主页
res = requests.get(url)
res.raise_for_status()

soup = bs4.BeautifulSoup(res.text,"html.parser")

qsMain = soup.select('a[class="contentHerf"]')[0]
print(qsMain)
url = 'http://www.qiushibaike.com' + qsMain.get('href')

#主页第一条糗事进入,糗事详情
res = requests.get(url)
res.raise_for_status()
print(url)
subLink = bs4.BeautifulSoup(res.text,"html.parser")

#获取到该页后,进入下一个糗事
s = subLink.find('input',{'id':"articleNextLink"})['value']
print(s)

解决方案

s = subLink.find(id="articleNextLink").get('value')

获取的代码改成这样,就可以正常获取了,因为我一直认为是固定的,但是这个是因人而异的,随着session变化和cookies变化而变换。所以我获取的是正确的。
就是说是随机的。并不是固定的。所以我写的这个鬼东西没用~
纯属涨了个经验~~

这篇关于网页爬虫 - python3 使用 bs4 抓取不到input里面的关键词的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆