Python图片爬虫(一般网站通用)

# 2023/7/14 Ying

import re
import requests
import traceback
import os

def dowmloadPic(html, keyword, startNum):
    headers = {'user-agent': 'Mozilla/5.0'}
    # 属性:百度hoverURL、middleURL、objURL,搜狗thumbUrl……
    pic_url = re.findall('"thumbUrl":"(.*?)",', html, re.S)
    i = startNum
    subroot = root + '/' + word
    txtpath = subroot + '/detail.txt'
    print('找到关键词为' + keyword + '的图片,开始下载图片...')
    for each in pic_url:
        print('正在下载第' + str(i + 1) + '张图片)
        path = subroot + '/' + str(i + 1)
        try:
            if not os.path.exists(subroot):
                os.mkdir(subroot)
            if not os.path.exists(path):
                pic = requests.get(each, headers=headers, timeout=10)
                with open(path + '.jpg', 'wb') as f:
                    f.write(pic.content)
                    f.close()
            else:
                os.remove(f'{path}.jpg')
        except:
            traceback.print_exc()
            print('error,当前图片无法下载')
            continue
        i += 1
    return i


if __name__ == '__main__':

    headers = {'user-agent': 'Mozilla/5.0'}
    # 搜索关键词
    words = ['树木', '花朵']
    root = './images_'
    if not os.path.exists(root):
        os.mkdir(root)
    for word in words:
        num = 0
        # 下载页数
        for i in range(3):
            # 搜狗图片
            url = 'https://pic.sogou.com/napi/pc/searchList?mode=1&start=144&xml_len=48&query=' + word
            # 百度图片
            # url = 'https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=' + word + "&pn=30&gsm=?&ct=&ic=0&lm=-1&width=0&height=0"
            html = requests.get(url, headers=headers)
            # 下载一页的图片(搜狗48,百度60)
            num = dowmloadPic(html.text, word, num, )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Linux Python 图片爬虫工具是一种用于在Linux操作系统上编写并执行的Python脚本,用于从网站上自动下载和保存图片数据。下面我将解释这个工具的功能和使用。 首先,该工具利用Python的功能强大和灵活性,通过使用第三方库(如BeautifulSoup和requests)从指定的网页上获取图片的URL地址。然后,它使用这些URL地址通过HTTP请求下载图片,并将其保存到本地文件系统中。 要使用这个工具,您需要在Linux操作系统上安装Python解释器以及所需的第三方库。然后,您可以编写一个Python脚本来实现图片爬取功能。脚本可以包括以下步骤: 1. 导入所需的Python库:例如,导入BeautifulSoup库用于解析网页内容,导入requests库用于发送HTTP请求。 2. 指定目标网页的URL:您可以将一个或多个网页链接作为输入。 3. 使用requests库发送HTTP请求并获取网页内容。 4. 使用BeautifulSoup库解析网页内容,并提取所有图片的URL地址。 5. 使用requests库发送HTTP请求并下载图片。您可以指定下载图片的保存路径和文件名。 6. 重复步骤3至5,直到所有图片都被下载。 7. 关闭脚本并退出。 该工具具有以下优点:免费、开源且跨平台。它可以应用于各种Web爬虫任务,如图像集合、数据采集等。此外,Python编程语言使得脚本编写和调试相对容易。 然而,请注意在使用这个工具时要遵守法律和道德规范,尊重网站所有者的权益,并尽可能避免过度请求服务器,以避免对目标网站造成不必要的负担。 总之,Linux Python 图片爬虫工具是一个功能强大且易于使用的工具,可以帮助您自动下载和保存网站上的图片数据。通过学习和掌握Python编程,您可以自定义和扩展此工具以满足各种需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值