当前位置: 首页 > news >正文

昆山网站建设价格备用参考建设工程教育网网址

昆山网站建设价格备用参考,建设工程教育网网址,电子商务好找工作吗,九江网站设计看教程的时候看到一个#xff0c;生产者跟消费者的概念比较有意思#xff0c;但是给的代码有问题无法正常运行#xff0c;于是我就捣鼓了一下。 基本概念就是#xff1a; 生产者#xff1a; 一个进程获取网页没页的图片连接#xff08;主进程…看教程的时候看到一个生产者跟消费者的概念比较有意思但是给的代码有问题无法正常运行于是我就捣鼓了一下。 基本概念就是                         生产者     一个进程获取网页没页的图片连接主进程                         消费者:        一个进程下载图片不同的是每个页面有20张图片所以在进程中又开了二十线程子进程 嗯概念就是这样接下来看代码 # -*- coding: utf-8 -*- # Time :2023/9/30 22:46 # [urlhome.php?modspaceuid686208]AuThor[/url] : # FileName :进程池.线程池配合使用与进程共用变量的使用.py # [urlhome.php?modspaceuid2097534]IED[/url] :PyCharm import multiprocessing import requests import os from concurrent.futures import ThreadPoolExecutor from lxml import etreepath rD:\img headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 }# 获取图片地址 def get_url(url, que):resp requests.get(url, headersheaders)resp.encoding resp.apparent_encodingdate resp.texttree etree.HTML(date)list_url tree.xpath(//ul[classclearfix]/li/a)for i in list_url:url_img i.xpath(./img/src)que.put(https://pic.netbian.com str(*url_img)) # put写入进程变量队列中resp.close()# 下载并保存图片 def download_ove(url, name):try:resp requests.get(url, headersheaders)path_img os.path.join(path, f{name.value}.jpg)with open(path_img, wb) as f:f.write(resp.content)print(f保存成功{name.value}.jpg)name.value 1 # 数值型进程变量自增except Exception as ex:print(下载出错, ex)# 获取进程队列中的url并启用线程池下载保存图片 def download_img(que, name):# 创建线程池,指定20个线程处理数据with ThreadPoolExecutor(20) as t:while True:try:s que.get(timeout3) # 获取进程队列中的数据等待3秒若是还没获取到数据抛出异常t.submit(download_ove, s, name) # 添加进线程池# t.submit(download_ove, s).add_done_callback(err_call_back) # 获取线程池异常except Exception as ec:print(ec)break# 接收进程池与线程池异常的回调函数 def err_call_back(err):print(f出错啦~ error{str(err)})if __name__ __main__:if not os.path.exists(path):os.mkdir(path)que multiprocessing.Manager().Queue() # 创建一个进程之间共享的队列变量name multiprocessing.Manager().Value(i, 0) # 创建一个进程之间共享的数值型变量i表示整型数字0表示从0开始for i in range(1, 4):if i ! 1:url fhttps://pic.netbian.com/4kdongman/index_{i}.htmlelse:url https://pic.netbian.com/4kdongman/get_url(url, que)# 创建进程池,并将函数添加到进程池内指定最多开辟1个进程处理数据开多了怕把网址玩崩with multiprocessing.Pool(1) as pool:pool.apply(download_img, args(que, name)) # 将函数以同步的方式添加进进程池# apply_async异步方式无法使用不知道为啥,不报异常也不运行download_img函数# pool.apply_async(download_img, args(que, name), error_callbackerr_call_back)pool.close() # 结束进程池不在往内添加数据pool.join() # 等待进程池运行结束print(结束) 本代码仅作为练习所用大家别把人家网站搞崩了。
http://www.hkea.cn/news/14563251/

相关文章:

  • 门户网站的建设cnetos 7 wordpress
  • 合肥建设工程竣工结算备案网站网站开发者
  • h5网站做微信小程序上鼎工程建设有限公司网站
  • 网站的demo怎么做wordpress 2m附件
  • 做阿里巴巴的网站的费用wordpress app 源码
  • 装修网网站建设途牛网站建设的特点
  • 合肥 做网站海口免费建站
  • 免费建社交网站上海电商网站建设公司
  • 环保网站建设说明书区块链资讯网站建设
  • 哪个网站教人做美食怎么做网站教程 建站视频
  • 陕西省交通建设集团西长分公司网站周口专业做网站公司
  • flex做的网站html做成网页
  • 网站服务商排名龙岗网站设计机构
  • 网站是空间备案旅游网模板html代码
  • 酒店网站可以怎么做广州市做网站公司
  • 学校开发网站公司商业设计方案
  • 3D动漫做爰网站app下载注册量推广平台
  • 网站建设公司人员配置最热门的网页游戏排行
  • 做网站要看什么书博远手机销售管理系统
  • it外包合同范本seo培训班
  • 什么叫高端网站定制网站建设等级定级
  • 焦作做微信网站多少钱杭州商业空间设计公司
  • 威海建设集团官方网站设计用哪些网站
  • 网站开发商问花店老板网站如何设置关键词
  • 密云城市建设官方网站crm管理软件
  • 南昌网站建设策划游戏开发开局协议三
  • 橘子seo查询推广网站seo
  • dw怎样建设网站汽车电商网站建设
  • 热门专业郑州做网站优化公司
  • 签约做网站模板深圳沙井做网站