爬取豆瓣电影Top250

"""
总结爬虫中遇到的问题。
"""
import requests
from lxml import etree

for page in range(0,10):
    page = page*25
    url = 'https://movie.douban.com/top250?start=%s&filter='%page

    #请求目标url
    response = requests.get(url)
    root = etree.HTML(response.content)
    movie_list = root.xpath("//ol[@class='grid_view']/li/div")
    for movie in movie_list:
        #电影名字
        name = movie.xpath("div[@class='info']/div[@class='hd']/a/span[1]/text()")[0]
        #导演
        director = movie.xpath("div[@class='info']/div[@class='bd']/p[1]/text()")[0].strip()
        #strip:去除字符串两端空格
        #时间、类别、国家
        time_class = movie.xpath("div[@class='info']/div[@class='bd']/p[1]/text()")[1].strip()
        class_list = time_class.split(' / ')
        #时间
        time = class_list[0]
        #国家
        state = class_list[1]
        #类别
        cla = class_list[2]
        #评分
        grade = movie.xpath("div[@class='info']/div[@class='bd']/div/span[2]/text()")[0]
        #评价
        eavluate = movie.xpath("div[@class='info']/div[@class='bd']/div/span[4]/text()")[0]
        #简介
        intro = movie.xpath("div[@class='info']/div[@class='bd']/p[@class='quote']/span/text()")[0]

        #保存文件为表格
        file = open('豆瓣电影TOP250.csv','a',encoding='gb18030')
        file.write(name+','+time+","+intro+","+grade+","+director+","+cla+","+state+","+eavluate+'\n')
        file.close()

爬取豆瓣电影Top250_第1张图片

你可能感兴趣的:(Python)