-
大小: 3KB文件类型: .py金币: 1下载: 0 次发布日期: 2021-05-20
- 语言: Python
- 标签:
资源简介
注释详细,帮助短时间消化学会使用python3爬虫,了解并学习使用requests、lxml、xlwt库。实列中以爬豆瓣电影为例,并下载到表格中。
代码片段和文件信息
import requests
from lxml import etree
import time
#xlwt用于写入数据到表格中
import xlwt
header1 = {‘User-Agent‘:‘Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/63.0.3239.132 Safari/537.36‘}
header2 = {‘User-Agent‘:‘Mozilla/4.0(compatible;MSIE8.0;WindowsNT6.0;Trident/4.0)‘}
#获得最大页码,用于循环下载页码和取出数据
def get_maxNumber(url):
r = requests.get(urlheaders=header1timeout=5).text
#使用lxml库
selector = etree.HTML(r)
#获得页码的列表,注意 .xpath(‘‘)找到的数字和文字或者混合的,都需要在后面加/text()
pageNumber_list = selector.xpath(‘//div[@class=“paginator“]/a/text()‘)
#从页码列表弹出最后一个页码,即最大页码,这个页码是str类型,需转换成int类型
numberMax = int(pageNumber_list.pop())
return numberMax
names = []
rates =[]
peopleCounts = []
directors=[]
dates = []
countrys = []
typeMovies = []
def main():
start_url = ‘http://movie.douban.com/top250‘
page = get_maxNumber(start_url)
for x in range(1page+1):
url = ‘https://movie.douban.com/top250?start=‘ + str(25*(x-1)) +‘&filter=‘
response = requests.get(urlheaders=header2timeout=5).text
s = etree.HTML(response)
#获得电影名字列表
name_list = s.xpath(‘//ol/li/div/div[2]/div[1]/a/span[1]/text()‘)
#将电影名字列表extend到主列表names中
names.extend(name_list)
rate_list = s.xpath(‘//ol/li/div/div[2]/div[2]/div/span[2]/text()‘)
rates.extend(rate_list)
peopleCount_list = s.xpath(‘//ol/li/div/div[2]/div[2]/div/span[4]/text()‘
- 上一篇:xm
l文件读写 - 下一篇:python视频教程.txt
评论
共有 条评论