python搜索关键词自动提交_简单爬虫:调用百度接口,实现关键词搜索(python_003)...

本文介绍了如何利用Python的urllib库实现百度搜索功能。通过观察URL中的关键信息,如“wd”参数代表关键词,理解URL结构并处理中文编码问题。通过构造URL,创建请求并发送,获取搜索结果页面,最终将页面内容保存到本地。注意在构造URL时使用http而非https,因为https可能需要证书。
摘要由CSDN通过智能技术生成

需求:

如何用python代码实现百度搜索关键词的功能?

比如输入关键词:“python爬虫”,得到一个搜索结果的页面,并保存到本地。

这是经典的python爬虫教学案例之一,也是比较基础的python实现。今天主要通过python自带的urllib库实现。

实现的步骤有三:

第一步:实践。打开百度搜索,输入关键词搜索一下。

第二步:观察。查看链接,找到链接中的规律。

将链接复制出来,如下:

看到这么一长串是不是挺吓人的?!

其实越是复杂的东西越是纸老虎。通过观察,这个链接中关键信息只有划线的一小部分:

为什么这么说?

因为如果你把剩下的信息删除,再去搜索也能得到同样的搜索结果。换句话说,其他的信息可有可无。

其实仔细观察,你会发现这个链接中有很多“&”符号,&的作用就是将不同的字段连接起来,组成一串完整的url,这些字段就像一张表单的表头一样,有些是必须填的,比如"wd=..."这个字段,就是关键词的意思,“ie=utf-8"就是一个编码的字段,采用utf-8编码。

那怎么判断哪些是关键信息?哪些是可有可无的字段呢?

很简单,你把你认为不重要的字段删除后,如果还能够实现搜索,就说明这个字段是不重要的。

另外,你可能会疑惑,明明关键词输入的是“python爬虫”,为什么链接里面变成“wd=python%E7%88%AC%E8%99%AB”了呢,因为中文在搜索的时候被自动转换编码了。我们在写代码的时候也要注意,如果输入的关键词里有中文,则需要对关键词处理一下,可以通过urllib.request.quote( )处理。

第三步:编写代码

首先,导入urllib库中的request,

接着,设定关键词,因为关键词里面有中文,用quote( )方法进行转码;

然后,构造url,我们发现wd就是关键词的接口,所以url部分只要加上keyword关键词即可;

再然后,就可以阿通过Request( )封装成request请求,再通过urlopen( )提交给服务器,并返回响应结果。

最后,通过open( ),write( )方法将页面保存到本地,关闭文件。

需要特别注意的是:构造url的时候,是http,不是https。因为https是网络的安全协议模式,需要有证书才能返回响应,在没有证书的情况下是不会返回结果的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值