python 单线程_python 单线程图片下载

import urllib.request

import urllib.parse

import urllib.error

import re

import os

import ssl

ssl._create_default_https_context=ssl._create_unverified_context

path= "./images"headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36","referer": "https://www.mzitu.com/xinggan/"}

def handler_request(url, pageIndex):

url= url +str(pageIndex)

# 构建请求对象

request= urllib.request.Request(url=url, headers=headers)returnrequest

def get_images_url(content, basePath):

patternNames= re.compile(r'

.*? (.*?).*?')

patternHrefs= re.compile(r'

.*?')

alts=patternNames.findall(content, re.S)

hrefs=patternHrefs.findall(content, re.S)

image_map={}for i inrange(len(hrefs)):

key= alts[i][1: len(alts[i]) - 1]

image_map[key]=hrefs[i]for item inimage_map.items():

image_category_response(item, basePath)

def image_category_response(item, basePath):

alt= item[0]

save_folder=os.path.join(basePath, alt)ifnot os.path.exists(save_folder):

os.mkdir(save_folder)

baseurl= item[1][1: len(item[1]) -1]

pageCount= 1000

try:for pageIndex inrange(pageCount):

page_url= baseurl + "/" +str(pageIndex)try:

# 构建请求对象

request= urllib.request.Request(url=page_url, headers=headers)

# 发送请求

response=urllib.request.urlopen(request)

content=response.read().decode()

imgPattern= re.compile(r'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值