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

网站 尺寸海原县建设局网站

网站 尺寸,海原县建设局网站,漳州房产网,wordpress仿站插件0x00 线程 线程是一个执行单位,是在一个进程里面的,是共享进程里面的提供的内存等资源,使用多个线程时和使用多个进程相比,多个线程使用的内存等资源较少。进程像一座“房子”(独立资源),线程是…

0x00 线程

线程是一个执行单位,是在一个进程里面的,是共享进程里面的提供的内存等资源,使用多个线程时和使用多个进程相比,多个线程使用的内存等资源较少。进程像一座“房子”(独立资源),线程是房子里的“房间活动”(共享资源但独立执行)。

进程是一个资源单位,比如说各种运行的应用程序,每个应用程序就是一个进程。
多进程会占用较多的内存资源,一般适用cpu密集型操作,如图像处理,视频编码等,这里不做介绍了。
下面的代码是一个单线程运行的

import requests
url=''
requests.get(url)

多线程的使用

import threading
def task(a):print(f"a子线程")
if __name__ == '__main__':s=threading.Thread(target=task, kwargs={"a":"bbb"})#通过字典传递函数的参数s.run()print("aaa")

创建一个线程为50的线程池

from concurrent.futures import ThreadPoolExecutor
def task():for i in range(1,1000):print(i)
if __name__ == '__main__':#创建一个50线程的with ThreadPoolExecutor(50) as t:t.submit(task)

实例爬取菜价在这里插入图片描述
通过分析,发现源码里面并没有,network 格式选择xhr,找到了最终的数据,通过分析发现是post提交的数据,current等于几就是第几页
在这里插入图片描述

from concurrent.futures import ThreadPoolExecutor
import requests
url='http://www.xinfadi.com.cn/getPriceData.html'
def download(count):data={"current":count,"limit":"20"}rep=requests.post(url=url,data=data)dic=rep.json()for i in range(0,20):#注意这里是字典夹杂着列表name=dic['list'][i ]['prodName']price=dic['list'][i]['avgPrice']with open("4.csv","a+") as f:f.write(f"菜名:{name}")f.write(f"平均价:{price}")f.write("\n")
if __name__ == '__main__':with ThreadPoolExecutor(50) as t:for i in range(1,50):t.submit(download,count=i)

在这里插入图片描述

0x01协程

协程(Coroutine) 是一种用户态的轻量级线程,通过协作式多任务实现高效并发,一般多用于io密集型操作,网络请求、文件读写等。
多线程:通过操作系统调度多个线程并行执行,属于并发的一种形式。
异步:单线程内通过事件循环调度多个任务,属于并发模型,特点是单线程高并发。

#定义协程
import asyncio
async def fetch_data():print("发起请求...")await asyncio.sleep(1)  # 模拟异步I/Otime.sleep(1)#同步错误用法print("数据返回")return {"data": 42}

案列爬取小说
分析网页,发现内容都在源代码中,这里选用xpath解析器,将小说内容保存到txt文件中去

import aiohttp
import asyncio
from lxml import etree
import osheaders = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
}
async def fetch(url):async with aiohttp.ClientSession() as session:async with session.get(url, headers=headers) as response:response.encoding = "utf-8"return await response.text()
async def parse_down(url):text = await fetch(url)html=etree.HTML(text)title=html.xpath("//h1/text()")contents=html.xpath("//div[@id='chaptercontent']/text()")os.makedirs("novels", exist_ok=True)filename = f"{title[0]}.txt"filepath = os.path.join("novels", filename)with open(filepath,"w+",encoding='utf-8') as f:f.write(title[0]+'\n\n')for content in contents:f.write(content.strip().replace("请收藏本站:https://www.bibie.cc。笔趣阁手机版:https://m.bibie.cc", "")+'\n')
async def main():tasks = []for i in range(1, 517):url = f'https://www.bibie.cc/html/229506/{i}.html'tasks.append(parse_down(url))await asyncio.gather(*tasks)print("爬取完成")
if __name__ == '__main__':try:asyncio.run(main())except Exception as e:print("")

在这里插入图片描述

http://www.dtcms.com/a/522735.html

相关文章:

  • 背景图网站网站优化合同模板
  • 南昌建设网站公司浙江省城乡建设厅
  • 胶州做网站公司html主页设计
  • 快站官方客户端下载餐饮网站系统
  • 大学生做网站合肥个人做网站
  • 网站界面设计实训的意义网站建设有免费的吗
  • 四川省建设招标网站比较好网站设计公司
  • 大连做网站价格厦门seo结算
  • 通过域名打开网站是做映射么wordpress 字体插件
  • 托管网站费用论述网站建设整个流程
  • 做网站策划案电商公司运营策略
  • 正规的网站建设公重庆公司印章代码查询
  • 网站建设服务协议 印花税昆明快速建站模板
  • 页面做的好看的网站遵义晚报电子版官方网站
  • 深圳网站建设公司设计公司wordpress 淘客api
  • 手机如何制作网站和网页注册百度账号
  • mcms怎么做网站旅游文创产品设计
  • 在上海做家教的网站国内用wordpress建设
  • 做网站流量怎么赚钱亳州做网站
  • 天津网站推广有哪些第三方营销平台有哪些
  • 沈阳网站公司哪个好网站备案免费的吗
  • 屏山县建设局网站专门网站建设
  • 婚纱摄影的网站怎么做民宿网络营销方式
  • 便捷网站建设价格小说网站开发中遇到的问题
  • 设计师 必备的网站企业营销网站建设价格
  • 网站建设公司的公众号小说网站怎么做不违法
  • 中山免费建网站目录型搜索引擎有哪些
  • 东莞网站建设服务网站设计背景
  • 上海做网站找谁wordpress站点临时关闭
  • seo关键字优化软件北京网站seo价格