猫眼电影是静态网页,并且不需要验证码,非常适合爬虫的入门练习,流程如下-通过url连接获取html内容,
在html中通过正则表达式,我们提取排名,名称,主演,上映时间等信息,格式如下
["9", "魂断蓝桥", "主演:费雯·丽,罗伯特·泰勒,露塞尔·沃特森", "上映时间:1940-05-17(美国)"]
import requests
import re
from bs4 import BeautifulSoup
import json
import time
requests和bs是爬虫需要的库,json是写入内容需要的库,time库防止猫眼反爬虫检测,加入休息时间,防止访问太频繁,re是正则表达式的库
def getHTMLText(url):
headers = { 'User-Agent':'Mozilla/5.0(Macintosh;Intel Mac OS X 10_13_3)AppleWebKit/537.36(KHTML,like Gecko) Chrome/65.0.3325.162 Safari/537.36'}
try:
r = requests.get(url, headers = headers)
r.encoding = r.apparent_encoding
return r.text
except:
return ''
这是访问url得到html信息的函数,headers是修改头文件,防止被识别为爬虫,r.apparent_encoding是识别文件的编码方式,防止出现乱码
def write_to_file(conten