python爬取并下载代码,python爬虫(Python读取TXT文件中的URL并下载,以下载图片为例)...

# -*- coding: utf-8 -*-

# 根据图片链接列表获取图片保存到本地

from urllib.request import urlretrieve

import os

# 解决

#import ssl

#ssl._create_default_https_context = ssl._create_unverified_context

'''

通过txt网址文件,下载图片到本地

'''

def download():

categories = ['pig'] #文件夹下的类别,比如 lion.txt;pig.txt:则此处就填写 'lion','pig'

for category in categories:

# 新建存储ladder文件夹存储图片

os.makedirs(r'D:\py-project\pig\%s' % category, exist_ok=True)

# 读取txt文件

with open(r'D:\py-project\pig\%s.txt' % category, 'r') as file:

urls = file.readlines()

# 计算链接地址条数

n_urls = len(urls)

# 遍历链接地址下载图片

for i, url in enumerate(urls):

q = i + 16673+7+46+47+350

try:

# 请求下载图片,并截取最后链接第一最后一节字段命名图片

urlretrieve(url,r'D:\py-project\pig\pig\%d.jpg' %q)#按照序号给图片命名

# urlretrieve(url.strip(), r'D:\py-project\pig\%s\%s' % (category, url.strip().split('/')[-1]))

#截取url最后一个字节给图片命名

print('%s %i/%i' % (category, i, n_urls))

print(url)

except:

print('%s %i/%i' % (category, i, n_urls), 'no image')

if __name__ == '__main__':

download();

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Python爬虫下载图片,可以按照以下步骤进行操作: 1. 首先,导入需要的模块。在这个例子,我们需要导入`urllib.request`、`re`、`uuid`和`os`模块来处理URL请求、正则表达式、生成唯一的文件名和管理文件操作。 2. 定义要爬取的网址。在这个例子,我们使用了百度图片搜索的网址作为示例。 3. 发送请求并获取网页的HTML内容。使用`urllib.request.urlopen(url)`方法发送请求,并使用`.read()`方法读取响应的内容。然后使用`.decode('utf-8')`方法将内容解码为字符串。 4. 使用正则表达式提取图片路径。使用`re.findall()`方法和正则表达式`'"objURL".{20,99}jpg'`来截取图片路径。 5. 遍历图片路径列表,并依次下载图片。可以使用循环来遍历图片路径列表,然后使用`urllib.request.urlopen()`方法发送请求获取图片的返回IO,再使用`.read()`方法读取图片的内容。 6. 生成唯一的文件名并保存图片。使用`uuid.uuid1()`方法生成唯一的文件名,然后将其与`.jpg`拼接成文件的完整路径。接着,使用`os.path.isdir()`方法判断保存路径是否存在,如果不存在则使用`os.mkdir()`方法创建路径。最后,使用`open(filename, 'wb')`方法打开文件,使用`.write()`方法将图片的内容写入文件,并使用`.close()`方法关闭文件。 以上就是使用Python爬虫下载图片的基本步骤。你可以根据自己的需求进行进一步的优化和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值