回家之后就不想学习了…
这次用的是lxml库,因为听说比起BeautifulSoup它的速度更快,然后就想了解一下。(全部的代码在最下面)
import库
from lxml import etree
import requests
import json
# from time import sleep
这是要用到的库。requests请求html,lxml解析html文档,然后得到的数据通过json存储在json文件。
分析豆瓣网页
第一页:https://movie.douban.com/top250
第二页:https://movie.douban.com/top250?start=25&filter=
第三页:https://movie.douban.com/top250?start=50&filter=
发现一页有25个电影介绍,每多一页start=的数目迁移25。因此尝试:
发现成功后,分析网页源代码。
这次抓取的只是电影名、排名、分数、和简介。还是跟之前那样子通过Chrome的审查元素抓取Xpath路径。
分别有:
# info
# //*[@id="content"]/div/div[1]/ol/li[1]/div/div[1]/em index
# //*[@id="content"]/div/div[1]/ol/li[1]/div/div[2]/div[1]/a/span[1] name
# //*[@id="content"]/div/div[1]/ol/li[1]/div/div[2]/div[2]/div/span[2] rate
# //*[@id="content"]/div/div[1]/ol/li[1]/div/div[2]/div[2]/p[2]/span quote
这是第一个电影的信息,可以看出来我们要抓取的内容都在一个统一的节点div
上。而每个电影都在不同的li
里面。