9.3.3 搜索关键词
2025年09月21日
9.3.3 搜索关键词
【案例9-1】 爬取百度搜索关键字的结果。
搜索引擎是日常工作与生活中常用的工具,也是访问互联网的门户。有时候需要自动向搜索引擎提交关键字并获得查询结果。现想要通过编程实现:输入一个关键词,利用网络爬虫在百度搜索引擎中搜索内容,并将搜索到的标题信息输出来。
案例分析:
百度搜索引擎的首页网址是http://www.baidu.com,当输入一个待查询关键词keyword时,百度程序会将这个查询自动转换为链接:http://www.baidu.com/s?wd=keyword。
利用百度搜索提供的这个链接接口,可以通过requests的get()函数提交查询,响应结果为百度搜索结果,这个问题的IPO描述如下。
·输入:待查询关键字。
·处理:自动获取百度搜索结果,并对页面内容进行解析处理。
·输出:返回链接的标题列表。
首先人工分析百度查询结果页面HTML代码。经分析发现,页面上返回的结果标题被封装在<div>…data-tools='{"title":"…","url":"…"}'>…</div>结构中。
得用BeautifulSoup找到data-tools属性值,提取带有title的字符串,可以看出data-tools内部是由“{}”包含的数据,是字典类型的JSON格式,可以用json库将其转换成字典,以便于操作。实现代码如下:
运行结果: