前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GPT4仅用5秒钟就帮我生成了爬取百度图片的代码(附源码以及提示词)

GPT4仅用5秒钟就帮我生成了爬取百度图片的代码(附源码以及提示词)

作者头像
码农飞哥
发布2024-06-21 08:30:42
840
发布2024-06-21 08:30:42
举报
文章被收录于专栏:好好学习好好学习

大家好,我是码农飞哥。一个专注于AI+RPA提效的资深Python开发工程师,全网15万粉丝,影刀高级认证工程师,关注并私聊我即送公众号爆文机器人。

最近通过GPT4-O生成了一个爬取百度图片的爬虫代码,让我比较惊喜地是GPT4-o生成的代码,复制下来之后直接可以成功运行。下面就给大家分享一下我这边使用的提示词,GPT4生成的代码以及最终代码运行的结果。

1. 编写提示词

代码语言:javascript
复制
你是一个资深爬虫开发工程师,擅长使用Python语言编写爬虫程序,现在有如下任务:
写一个爬虫程序,按下面的要求在我的 windows 电脑上帮我抓取百度图片。

使用 python3 和最新版的 selenium
目标网站:https://image.baidu.com/
输入关键字[ AIGC ],点击[ 百度一下 ]按钮
爬取内容: 图片
爬取后的内容保存到AIGC文件夹中,图片文件命名为1++
爬取10张图片,休眠3s,页面下滑滚动,直到爬到100张图片后停止。
请给我完整可运行的程序,让我看到浏览器中操作的过程,并指导我安装程序依赖的所有库。
你可以先执行步骤 2 和步骤 3 了解网页的结构,然后再生成代码。

2. GPT4-O 快速生成代码中

在这里插入图片描述

3.生成代码

代码语言:javascript
复制
import os
import time
import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options

# 创建保存图片的文件夹
if not os.path.exists('AIGC'):
    os.makedirs('AIGC')

# 配置 Chrome 浏览器
chrome_options = Options()
chrome_options.add_argument("--headless")  # 如果你不想看到浏览器窗口,取消注释这一行
chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("start-maximized")

# 启动 WebDriver
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)

try:
    # 打开百度图片
    driver.get('https://image.baidu.com/')
    time.sleep(3)

    # 输入关键字 "AIGC" 并搜索
    search_box = driver.find_element(By.NAME, 'word')
    search_box.send_keys('AIGC')
    search_box.send_keys(Keys.RETURN)
    time.sleep(3)

    # 初始化图片计数器
    image_count = 0
    target_count = 100

    while image_count < target_count:
        # 获取当前页面的图片
        images = driver.find_elements(By.XPATH, '//img[@class="main_img img-hover"]')

        for img in images[image_count:target_count]:
            src = img.get_attribute('src')
            if src and src.startswith('http'):
                try:
                    response = requests.get(src)
                    if response.status_code == 200:
                        with open(f'AIGC/{image_count + 1}.jpg', 'wb') as file:
                            file.write(response.content)
                        image_count += 1
                        if image_count >= target_count:
                            break
                except requests.RequestException as e:
                    print(f"Could not download image {src}: {e}")

        # 滚动页面加载更多图片
        driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
        time.sleep(3)

finally:
    driver.quit()

print("完成图片抓取")

4. 代码运行效果

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码农飞哥 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 编写提示词
  • 2. GPT4-O 快速生成代码中
  • 3.生成代码
  • 4. 代码运行效果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档