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)

就是要抓这个东西

阅读 4.4k
1 个回答
✓ 已被采纳新手上路,请多包涵
s = subLink.find(id="articleNextLink").get('value')

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进