Python10行代码实现模拟百度搜索的示例
1000块钱做个百度?能提出这种要求的客户实乃乙方克星、民族之光、科创永动机、西虹市一大杰出青年,诺奖永远得不到的人才。
但作为一个硬核的程序员,没有什么功能是我们实现不了的,如果有,那就是钱没到位。因此,我们要用魔法打败魔法,10行代码给他写一个百度搜索。
1. 获取百度搜索接口

地址栏中有很多参数,但实际有用的参数只有 wd ,只需要保留这一个参数即可,其余删掉。
url = 'https://www.baidu.com/s?wd=士别三日wyx'
2. 指定搜索内容
搜索内容肯定不能写死,需要由用户「输入」
kw = input('百度一下:')
url = 'https://www.baidu.com/s?wd=' + kw
3. UA伪装
利用百度的接口发送「请求」,获取响应内容。
大部分网站都会对用户的请求进行「过滤」,以防止恶意攻击行为,比如查看是否是浏览器发出的请求
「UA伪装」是指在HTTP请求头中添加 User-agent ,伪装成浏览器的请求,网站检查请求头时,发现有UA请求头,就会认为是浏览器的请求,从而放行。
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:92.0) Gecko/20100101 Firefox/92.0',}
response = requests.get(url=url, headers=headers)
4. 将响应内容写入文件
响应的内容实际上就是构成页面的 HTML 代码,将响应内容写入HTML文件,就获得了百度搜索的响应页面
fileName = 'a.html'
with open(fileName, 'w', encoding='utf-8') as fp:
fp.write(response.text)
5. 使用浏览器打开页面
页面生成以后肯定不能再手动打开,那也太low了,使用默认「浏览器」自动打开生成的页面
webbrowser.open(fileName)
源码如下
import webbrowser
import requests
kw = input('百度一下:')
url = 'https://www.baidu.com/s?wd=' + kw
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:92.0) Gecko/20100101 Firefox/92.0',}
response = requests.get(url=url, headers=headers)
fileName = 'a.html'
with open(fileName, 'w', encoding='utf-8') as fp:
fp.write(response.text)
webbrowser.open(fileName)
输入想要百度的内容,按下回车

即可自动使用默认浏览器打开搜索结果的页面

到此这篇关于Python10行代码实现模拟百度搜索的示例的文章就介绍到这了,更多相关Python 模拟百度搜索内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
python中DataFrame数据合并merge()和concat()方法详解
Pandas提供了很多合并Series和Dataframe的强大的功能,通过这些功能可以方便的进行数据分析,下面这篇文章主要给大家介绍了关于python中DataFrame数据合并merge()和concat()方法的相关资料,需要的朋友可以参考下2022-07-07
Python3.6+selenium2.53.6自动化测试_读取excel文件的方法
这篇文章主要介绍了Python3.6+selenium2.53.6自动化测试_读取excel文件的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-09-09
Python中break语句和continue语句的用法讲解
在Python中,break语句和continue语句一般用于循环语句中,这篇文章主要介绍了Python中break语句和continue语句的用法小结,需要的朋友可以参考下2022-12-12


最新评论