Python制作简易百度

是的,你没有听错,我们这次要做一个简易的百度。

大致思路

  1. 我们写一个输入框输入想搜索的内容
  2. 然后调用百度的接口搜索
  3. 因为大多数网站都为了防止黑客攻击都会进行过滤,所以我们要做一个UA伪装
  4. 保存为一个baidu.html文件
  5. 用webbrowser运行baidu.html文件

获取百度接口

我们随便在百度输入框输入一个内容,按下Enter,就开始跳转:

https://www.baidu.com/s?wd=CSDN

其中https://www.baidu.com/就不用多说了,百度的网址,后面s?没什么用,真正有用的是:

wd=CSDN

wd=后面的就是你刚刚输入的内容,因为这只是英文,所以后面没有其它参数,否则:

https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=baidu&wd=%E5%8D%9A%E5%AE%A2%E5%9B%AD&oq=%2526lt%253BSDN&rsv_pq=c93c11cb000f0125&rsv_t=722dTN4f3moUEr5SqdPv9WaOTtalUJYLbsBxo2gfDASrj1S9eZuTE2DzWEQ&rqlang=cn&rsv_enter=1&rsv_dl=tb&rsv_sug3=20&rsv_sug1=18&rsv_sug7=100&rsv_sug2=0&rsv_btype=t&inputT=6714&rsv_sug4=6834

 但是我们可以发现,不管你搜的是什么最后有用的还是wd的值,所以我们直接input"wd"的值就可以了。

1.输入框

这个就很简单,会input就可以,代码如下:

wd = input("输入并搜索...")
url = 'https://www.baidu.com/s?wd=' + wd

2.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)

3.保存baidu.html

这一步就是把response里面的东西保存进baidu.html文件,这样做第一次虽然慢点,但以后很方便。但是这里多少要掌握一些HTML,代码如下:

fileName = 'baidu.html'
with open(fileName, 'w', encoding='utf-8') as fp:
    fp.write(response.text)

4.运行baidu.html

这里没什么可说的了,但是需要引入webbrowser库,才能打开baidu.html,代码如下:

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 = 'baidu.html'
with open(fileName, 'w', encoding='utf-8') as fp:
    fp.write(response.text)
webbrowser.open(fileName)

这个只是暂时的,不然你会喜欢一个黑框框的百度吗? 

posted @ 2022-07-19 19:47  GitTJBKBeta  阅读(228)  评论(0)    收藏  举报