python 爬取猫眼前一百个电影

本文分享了使用Python和XPath从猫眼电影网站抓取电影信息的爬虫程序实现细节,包括请求头设置、URL构造、响应解析及数据打印。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习自《python3网络爬虫开发实战》, 整理以备日后回顾

网上其实很多猫眼电影的爬取实例,然而找了好久都没找到xpath解析的相关程序,再加上网页自身也多少存在变化,
所以就一时兴起自己写一个简单程序试了一下

import requests
from lxml import etree
import time
from requests.exceptions import RequestException

def get_page(page):
    try:
        headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 '
                          '(KHTML, like Gecko) Chrome/38.0.2125.122 UBrowser/4.0.3214.0 Safari/537.36'
        }
        url = 'https://maoyan.com/films?showType=3&offset=' + str(page)
        response = requests.get(url, headers=headers).text
        html = etree.HTML(response, parser=etree.HTMLParser())
        return html
    except RequestException :
        return None

def number_title(number):
    return number+1

def parse_page(html):
    titles = html.xpath('//a[@data-act="movies-click" and @target="_blank"]/text()')
    number = 0
    for title in titles:
        number = number_title(number)
        print(str(number) + ' ' + title)

def main():
    for page in range(0,4):
        page = page * 30
        print('第' + str(int((page)/30+1)) + '页正在打印')
        time.sleep(1)
        parse_page(get_page(page))

if __name__ == '__main__':
    main()

成文时每页是有三十个电影的,所以就直接弄了一百二十个电影,标号是每页的标号,1 到 30 ,结果也并未保存,只是单纯
输出看了一下 ,也许过段时间页面存在变化的话还会再改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值