上一篇博客(入门知识篇),对爬虫有了一个基本的了解,但是具体怎么实现一个爬虫程序呢?
一般情况下,我们在浏览器获取信息,是向服务器发送一个http请求,要么返回html页面,要么是ajax请求返回一串json数据,以更新当前网页中局部信息。这里用两个例子分别学习下爬虫的基本操作。
以下代码是基于python3.6环境。
一、百度在线翻译的自动联想功能
百度在线翻译有这样一个功能,如下图,输入一个字母w,下面黄框里实时就会联想出来几个w开头的单词并有相应的翻译,分析可见,是网页自动发送了一个post请求"https://fanyi.baidu.com/sug",并且只有一个参数。那么我们怎么利用这个API实现我们自己的联想功能呢?
参数列表:
再看下其返回结果:
我们模拟浏览器发送这个请求,将获得这样的json字符串,解析之后,就可以拿到联想到的单词和相应的翻译了:
# 使用requests
import requests
import json
def fanyi(keyword):
url = 'https://fanyi.baidu.com/sug'
# 定义请求参数
data = {
'kw' : keyword
}
# 通过设置header头,伪装浏览器用户
headers =