|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
以下是小白的纯练习,基础很差,表达能力也很差。要是我的问题描述得不清不楚,麻烦指出来,我可以再描述清楚一点。请大神勿喷。(希望两个问题能同时回答,万一张三回答一个,李四回答另一个,我不知要采纳谁好。)
天涯论坛不需要注册或登录,可以直接搜索。
1. 我想爬取 ‘天涯’论坛,某个用户(随便举个实例:tendays2029abc),可是下面的代码,出现的输入的ID,只在帖子主题中出现的, 并没有同时显示到底有没有这个用户。
而在天涯论坛的搜索框输入:tendays2029abc, 它会同时显示帖子的主题有没有包含这个关键词和这个用户-tendays2029abc 见截图
请教一下是不是我的url 编写错了,少了 &pid=?
https://search.tianya.cn/bbs?q=tendays2029abc&pid= (这个是天涯搜索框的网址。)
如果少写了,这个&pid= 应该写在哪呀?我尝试了乱写一通,可是结果是错的。
2. 这个用户 tendays2029abc, 有无数的帐号。比如:tendays2024abc, tendays2025abc, tendays2030abc等等
我尝试运行本程序时,不直接输入具体的用户名,而是用正则表达式:tendays20\d\dabc 出错了。请问我能在input的函数提示输入正则吗?我的正则表达式是不是出错了? 应该怎么做才能把这个用户的ID一网打尽,全部爬出来?
import requests
url = 'https://search.tianya.cn/bbs'
headers = {
'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'
}
kw = input('请输入关键词:')
params = {
'q' : kw
}
response = requests.get (url=url, params=params, headers=headers)
page_text = response.text
filename = kw +'.html'
with open (filename, 'w',encoding='utf-8') as fp:
fp.write(page_text)
点搜索后仔细找找就看到了
pid 只接受一次 关键信息,不能同时接受多个,或者你再试试pid参数
|
|