查查知识网

百度识图扫一扫 扫图识人

发布者:张龙
导读新版必应实在是太强大了,最近玩爬虫不亦乐乎,按照你的思路和条件,分分钟给你生成一个爬虫,爬取你喜欢的任意内容,包括今天的100张小姐姐图片,废话不说,直

新版必应实在是太强大了,最近玩爬虫不亦乐乎,按照你的思路和条件,分分钟给你生成一个爬虫,爬取你喜欢的任意内容,包括今天的100张小姐姐图片,(100万张都可以,做教程演示就没必要那么多了)废话不说,直接上教程:

我重申一下,很多同学还不知道怎么申请新版必应,这里我将以前的教程分享出来,自己对照教程,就可以注册,不用再给我私信了!

申请必应教程:点击申请

融合ChatGPT的微软新版必应bing更加智能,国内随便用

手机使用新版必应教程,点击查看

手机使用新版必应NewBingAi保姆级教程,设置简单比ChatGPT好用

1、我们打开新版必应bing.com/new,打开对话框,选择有创造力,为什么选这个呢,这个会有较大自由发挥空间,选另外两个输出的结果会比较严谨,适合做学术。

2、跟bing对话:生成一段爬虫,爬取百度图片里面100张小姐姐照片,保存在F:photo100 的路径下;

3、完整的代码:(为了不影响阅读,放在文章末尾了,需要的往下划)

4、既然是Python爬虫,就需要python环境执行,(为了演示教程,我亲手将系统里的环境删除的干干净净,[捂脸]太不容易了,给个关注吧[呲牙])

下载安装python,我们还是交给BingChatAi搜索提供下载地址吧:

5、按照BingChatAi输出的下载地址,下载安装吧:(我用的是win版,大家根据自己的系统去下载)

6、我们找个稳定版:python3.10.10

7、下载完毕,开始安装

8、开始菜单里面找到python打开,运行爬虫:

就是这个界面

必应写的爬虫,比如要爬取百度图片,就需要改成百度图片的地址:

实际运行过程总是出错,[捂脸][捂脸][捂脸][捂脸]最大的可能性是python版本问题,今天太晚了,先写到这,就不找原因了,毕竟AI生成的,不知道适合那个版本的python。

下面是代码,需要的自取,思路其实没啥思路,非常简单,感兴趣的动起来!

# 导入 requests 和 BeautifulSoup 库
import requests
from bs4 import BeautifulSoup

# 定义要爬取的关键词和保存路径
keyword = "小姐姐"
save_path = "F:\photo100\"

# 定义百度图片的 url 模板
url_template = "https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word={}&pn={}"

# 定义要爬取的图片数量
num = 100

# 定义一个计数器
count = 0

# 循环爬取每一页的图片
while count < num:
    # 根据关键词和页码生成 url
    url = url_template.format(keyword, count)

    # 发送 get 请求,并获取响应内容
    response = requests.get(url)
    content = response.text

    # 使用 BeautifulSoup 解析 html 内容,并找到所有的 img 标签
    soup = BeautifulSoup(content, "html.parser")
    imgs = soup.find_all("img")

    # 循环遍历每个 img 标签,并获取其 src 属性值(即图片链接)
    for img in imgs:
        src = img.get("src")

        # 如果 src 不为空,则尝试下载图片并保存到本地
        if src:
            try:
                # 发送 get 请求,并获取图片二进制数据
                img_data = requests.get(src).content

                # 生成图片文件名和路径
                file_name = keyword + str(count) + ".jpg"
                file_path = save_path + file_name

                # 打开文件并写入数据
                with open(file_path, "wb") as f:
                    f.write(img_data)

                # 打印提示信息
                print("已下载第 {} 张图片:{}".format(count + 1, file_name))

                # 计数器加一,并判断是否达到目标数量,如果是,则退出循环
                count += 1
                if count == num:
                    break

            except Exception as e:
                # 如果出现异常,则打印错误信息,并继续循环
                print("下载第 {} 张图片失败:{}".format(count + 1, e))