最近开始学习爬虫,用的是崔庆才老师的教程,其中第一个实战就是爬取猫眼电影的TOP100,使用的是requests+re。但我觉得re有点复杂,于是探索了一下用其他解析库来爬取。
网页的构造:
网页的源代码如下图,可以看到一部电影的信息是存放在一个dd节点中,所以只要把所有的dd节点全部爬取下来,然后循环遍历就行了。要提取的信息中电影名在p节点下的a节点中,主演在class为star的p节点中,上映时间类似于主演,评分这里需要注意的是它在两个不同的i节点中。
本文使用的IDE是pycharm或者jupyter。
1、requests+re爬取
直接贴上崔庆才老师的代码了,感觉网上一搜到处都是这一段:
import json
import requests
from requests.exceptions import RequestException
import re
import time
def get_one_page(url):
try:
headers = {
'User-Agent' : 'Mozilla/5.0 (Macintosh; Inter Mac OS X 10_13_3) Applewebkit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.