批量下载图片

import urllib.request
from lxml import etree

def create_request(page):
    if(page == 1):
        url = 'https://sc.chinaz.com/tupian/shuiguotupian.html'
    else:
        url = 'https://sc.chinaz.com/tupian/shuiguotupian_' + str(page) + '.html'
    headers = {
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) ' 
                     'AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36'
    }
    requests = urllib.request.Request(url = url, headers = headers)
    return requests

def get_content(request):
    response = urllib.request.urlopen(request)
    content = request.read().decode('utf-8')
    return content

def down_load(content):
# urllib.request.urlretrieve('图片地址','文件名字')
    tree = etree.HTML(content)
    name_list = tree.xpath('//div[@class="item masonry-brick"]/img/@alt')
    # 一般涉及图片的网站都会进行懒加载   src会变 一定要获取变之前的数据
    src_list = tree.xpath('//div[@class="item masonry-brick"]/img/@src')
    for i in range(len(name_list)):
        name = name_list[i]
        src = src_list[i]
        url = 'https:' + src
        urllib.request.urlretrieve(url=url,filename='./fruitImg/' + name + '.jpg')



    # print(len(name_list),len(src_list))
    # print(len(name_list))
    # for name in name_list:
    #     print(name)

if __name__ == '__main__':
    start_page = int(input('起始页码:'))
    end_page = int(input('最后页码:'))

    for page in range(start_page,end_page+1):
        request = create_request(page)
        content = get_content(request)
        down_load(content)




  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Selenium是一个用于自动化浏览器操作的工具,可以通过编写代码来模拟用户在浏览器中的操作。如果你想要使用Selenium来批量下载图片,可以按照以下步骤进行操作: 1. 首先,确保你已经安装了Python和Selenium库。你可以使用pip命令来安装Selenium库:`pip install selenium`。 2. 接下来,你需要下载并安装对应浏览器的驱动程序。Selenium需要驱动程序来控制浏览器。不同的浏览器需要不同的驱动程序。例如,如果你使用的是Chrome浏览器,你需要下载ChromeDriver;如果你使用的是Firefox浏览器,你需要下载geckodriver。你可以在Selenium官方网站上找到对应的驱动程序下载链接。 3. 安装完成后,你可以通过以下代码示例来使用Selenium批量下载图片: ```python from selenium import webdriver # 创建一个浏览器实例 driver = webdriver.Chrome() # 如果使用的是Chrome浏览器,需要指定ChromeDriver的路径 # 打开网页 driver.get("http://example.com") # 替换成你要下载图片的网页地址 # 定位图片元素 images = driver.find_elements_by_tag_name("img") # 遍历图片元素并下载图片 for image in images: image_url = image.get_attribute("src") # 下载图片的逻辑,这里可以使用Python的requests库或其他下载图片的方法 # 关闭浏览器 driver.quit() ``` 在上述代码中,我们首先创建了一个浏览器实例,然后打开了指定的网页。接着,通过定位图片元素,我们可以获取到网页中的所有图片。最后,我们可以遍历图片元素,并通过下载图片的逻辑来下载每个图片
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值