吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1819|回复: 13
收起左侧

[Python 转载] 用AI生成的获取豆瓣电影top250,xpath和BeautifulSoup

[复制链接]
欢乐之歌 发表于 2023-5-6 12:03
用AI生成的获取豆瓣电影top250
用xpath 和 BeautifulSoup AI确实牛掰,我服了,


这是AI生成的代码,我只修改了一点点,
xpath解析后保存到csv文件!

[Python] 纯文本查看 复制代码
import requests
from bs4 import BeautifulSoup
from lxml import etree
import csv
# 请安装:requests,bs4,lxml


def doubantop250beauti():
    url = 'https://movie.douban.com/top250'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
    }
    movies = []
    for i in range(0, 250, 25):
        params = {'start': str(i), 'filter': ''}
        response = requests.get(url, headers=headers, params=params)
        soup = BeautifulSoup(response.text, 'html.parser')
        movie_list = soup.find_all('div', class_='hd')
        for movie in movie_list:
            title = movie.a.span.text.strip()
            link = movie.a['href']
            movies.append({'title': title, 'link': link})

    for movie in movies:
        print(movie['title'], movie['link'])


def doubantop250xpath():

    # 设置UA
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}

    # 获取Top250页面
    url = 'https://movie.douban.com/top250'
    for i in range(0, 250, 25):
        params = {'start': str(i), 'filter': ''}
        response = requests.get(url, headers=headers, params=params)
        html = response.text
        # 解析页面
        selector = etree.HTML(html)
        movies = selector.xpath('//div[@class="info"]')

        # 遍历电影信息
        for movie in movies:
            # 电影名称
            title = movie.xpath('div[@class="hd"]/a/span[@class="title"]/text()')[0]

            # 电影评分
            score = movie.xpath('div[@class="bd"]/div[@class="star"]/span[@class="rating_num"]/text()')[0]

            # 电影链接
            link = movie.xpath('div[@class="hd"]/a/@href')[0]

            # 打印电影信息
            print('电影名称:', title)
            print('电影评分:', score)
            print('电影链接:', link)
            print('-----------------------')

        # 写入CSV文件
        with open('top250.csv', 'a', encoding='"utf-8_sig"', newline='') as f:
            writer = csv.writer(f)
            for movie in movies:
                title = movie.xpath('div[@class="hd"]/a/span[@class="title"]/text()')[0]
                score = movie.xpath('div[@class="bd"]/div[@class="star"]/span[@class="rating_num"]/text()')[0]
                link = movie.xpath('div[@class="hd"]/a/@href')[0]
                writer.writerow([title, score, link])



if __name__ == '__main__':
    doubantop250xpath()
	#doubantop250beauti()

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

博爵 发表于 2023-5-6 21:50
欢乐之歌 发表于 2023-5-6 17:56
我最喜欢的还是易语言,但是它不懂易语言,哈哈,伤心!
有什么问题直接问就行了,有时候你表达的不清楚 ...

chat可以生成调用系统api,dll那种
 楼主| 欢乐之歌 发表于 2023-5-6 20:22
wakichie 发表于 2023-5-6 19:35
没有生成的截图啊

我只问了句:用python获取豆瓣top250再保存出来,它生成的东西就是这些代码啊,代码我只修改了百分之2,还要什么截图,发出来供大家学习练手
wty1641 发表于 2023-5-6 17:17
 楼主| 欢乐之歌 发表于 2023-5-6 17:42

那必须是ChatGPT
py学徒 发表于 2023-5-6 17:45
很赞!你怎么提问的?
 楼主| 欢乐之歌 发表于 2023-5-6 17:48
py学徒 发表于 2023-5-6 17:45
很赞!你怎么提问的?

直接说:用python获取豆瓣top250就行了,用xpath解析再保存出来,就行了
py学徒 发表于 2023-5-6 17:50
欢乐之歌 发表于 2023-5-6 17:48
直接说:用python获取豆瓣top250就行了,用xpath解析再保存出来,就行了

哈,谢谢,学习了!
 楼主| 欢乐之歌 发表于 2023-5-6 17:56
py学徒 发表于 2023-5-6 17:50
哈,谢谢,学习了!

我最喜欢的还是易语言,但是它不懂易语言,哈哈,伤心!
有什么问题直接问就行了,有时候你表达的不清楚,它也理解,牛掰得很!
wakichie 发表于 2023-5-6 19:35
没有生成的截图啊
py学徒 发表于 2023-5-6 19:49
欢乐之歌 发表于 2023-5-6 17:56
我最喜欢的还是易语言,但是它不懂易语言,哈哈,伤心!
有什么问题直接问就行了,有时候你表达的不清楚 ...

确实可以。我刚试了试pandas。哈哈~
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 22:10

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表