Python爬虫教程-17-ajax爬取实例(豆瓣电影)

Python爬虫教程-17-ajax爬取实例(豆瓣电影)

ajax: 简单的说,就是一段js代码,通过这段代码,可以让页面发送异步的请求,或者向服务器发送一个东西,即和服务器进行交互

对于ajax:
  • 1.一定会有 url,请求方法(get, post),可能有数据
  • 2.一般使用 json 格式

爬取豆瓣电影

# 爬取豆瓣电影数据
# 了解ajax的爬取方式
# https://movie.douban.com/ from urllib import request
import json # url信息:interval_id表示排名段(可自行修改),limit限制20个
url = "https://movie.douban.com/j/chart/top_list?type=5&interval_id=100%3A90&action=&start=20&limit=20" rsp = request.urlopen(url)
data = rsp.read().decode() data = json.loads(data) print(data)

运行结果

可以看到结果在一行显示

Python爬虫教程-17-ajax爬取实例(豆瓣电影)

修改输出格式

# 爬取豆瓣电影数据
# 了解ajax的爬取方式
# https://movie.douban.com/ from urllib import request
import json # url信息:interval_id表示排名段(可自行修改),limit限制20个
url = "https://movie.douban.com/j/chart/top_list?type=5&interval_id=100%3A90&action=&start=20&limit=20" rsp = request.urlopen(url)
data = rsp.read().decode() data = json.loads(data) # 遍历输出每个'k'和'v'的值
for item in data:
print("排名:", item['rank'], "\n",
"名称:", item['title'], "\n",
"类型:", item['types'], "\n",
"主演:", item['actors'], "\n",
"分数:", item['score'],"\n-------------",)

运行结果

Python爬虫教程-17-ajax爬取实例(豆瓣电影)

这里结果就比较顺眼了,如果需要更改排名段,因为是get请求,修改需要在url参数即可

更多文章链接:Python 爬虫随笔

  • 本笔记不允许任何个人和组织转载
上一篇:T-SQL编程中的异常处理-异常捕获(try catch)与抛出异常(throw)


下一篇:[原创]python爬虫之BeautifulSoup,爬取网页上所有图片标题并存储到本地文件