获取Ajax加载的内容

1、如果所爬取的网址是通过Ajax方式加载的,就直接抓包,拿他后面传输数据的文件

2、有些网页内容使用AJAX加载,只要记得,AJAX一般返回的是JSON,直接对AJAX地址进行post或get,就返回JSON数据了。

"作为一名爬虫工程师,你最需要关注的,是数据的来源"

#!/usr/bin/env python
# coding=utf-8


import urllib
import urllib2
#先要模拟浏览器的请求过程,配置代理

#在一开始使用的url地址是浏览器直接复制出来的,无法使用。之后用的是抓包工具使用的,浏览器返回来的地址才成功抓取页

url="https://movie.douban.com/j/chart/top_list?type=11&interval_id=100%3A90&action="


headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65
.0.3325.181 Safari/537.36"}
#网页url中变动的两个参数,一个每页限制需要加载的数量,一个是加载的起始页面
formdata={
    "start":"0",
    "limit":"20"
}
#转码
data=urllib.urlencode(formdata)
#向指定的url地址发出请求,服务器返回指定类的请求对象
request=urllib2.Request(url,data=data,headers=headers)
response=urllib2.urlopen(request)


print response.read()

获取Ajax加载的内容

注意的是&是隔开各个参数的,

https://movie.douban.com/j/chart/top_list?type=11&interval_id=100%3A90&action=&start=0&limit=1 中‘&start=0&limit=1’两个参数的设置