爬取(谷歌 百度 搜狗)的搜索结果


步骤如下:
1.首先导入爬虫的package:requests

2.使用UA 伪装进行反反爬虫,将爬虫伪装成一个浏览器进行上网

3.通过寻找,找到到谷歌搜索时请求的url。

假设我们在谷歌浏览器当中输入:不知道

我们可以得到请求结果的网址如下:

也就是:

https://www.google.com/search?q=%E4%B8%8D%E7%9F%A5%E9%81%93&rlz=1C1CHWL_zh-CNAU918AU918&oq=%E4%B8%8D%E7%9F%A5%E9%81%93&aqs=chrome.0.69i59l2.885j0j1&sourceid=chrome&ie=UTF-

在这个网址当中,问号“?”后面的则是这次请求的参数,将问号前面的网址拿下来,放到代码里。后面的参数我们可以代码进行人为的定义,这样我们就可以使用爬虫爬取任意搜索结果的html网页了。

剪辑后的url如下:

url='https://www.google.com/search'

?问号后面的“q=不知道”可以作为我们传入给谷歌搜索引擎的参数,因此可以编写代码:

param={
    'q':kw
}

这样程序就可以自己知道搜索引擎后面跟随的参数是什么了。我们就可以传递进一个我们想要的kw进去即可。

完整的程序如下:

import requests

headers={
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36'
}

url='https://www.google.com/search'
#处理url所携带的参数,将其封装到字典当中
kw=input("enter a word:")
param={
    'q':kw
}
#对指定url发起的请求url是携带参数的
response=requests.get(url=url,params=param,headers=headers)
page_text=response.text
print(page_text)
file_name=kw+'.html'
with open(file_name,'w',encoding='utf-8') as fp:
    fp.write(page_text)

爬取(谷歌 百度 搜狗)的搜索结果介绍到这里,更多Python学习请参考编程字典Python教程 和问答部分,谢谢大家对编程字典的支持。


原文链接:https://www.cnblogs.com/geeksongs/p/14261729.html