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

网站建设在什么税控盘网站关键词快速排名工具

网站建设在什么税控盘,网站关键词快速排名工具,开源多用户商城哪个好,做网站版权怎么写题目 链接 爬虫往往不能在一个页面里面获取全部想要的数据,需要访问大量的网页才能够完成任务。 这里有一个网站,还是求所有数字的和,只是这次分了1000页。 思路 找到调用接口 可以看到后面有个参数page来控制页码 代码实现 import reques…

题目
链接

爬虫往往不能在一个页面里面获取全部想要的数据,需要访问大量的网页才能够完成任务。
这里有一个网站,还是求所有数字的和,只是这次分了1000页。

思路

  • 找到调用接口

-
可以看到后面有个参数page来控制页码

代码实现

import requests
import reurl = 'http://www.glidedsky.com/level/web/crawler-basic-2'headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.54','Cookie': ''
}res = 0
for i in range(1, 1001):temp_url = url + '?page=' + str(i)response = requests.get(temp_url, headers=headers)html = response.textpattern = re.compile('<div class="col-md-1">.*?(\d+).*?</div>', re.S)n_list = re.findall(pattern, html)for n in n_list:res += int(n)print(f'Result: {res}')

使用多线程实现更快爬取:

import requests
import re
import threadingurl = 'http://www.glidedsky.com/level/web/crawler-basic-2'
total_threads = 10  # 设置线程数量
lock = threading.Lock()  # 创建一个锁,用于线程间的数据同步
res = 0def worker(thread_id):global resfor i in range(thread_id, 1001, total_threads):temp_url = url + '?page=' + str(i)response = requests.get(temp_url, headers=headers)html = response.textpattern = re.compile('<div class="col-md-1">.*?(\d+).*?</div>', re.S)n_list = re.findall(pattern, html)with lock:for n in n_list:res += int(n)threads = []
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.54','Cookie': ''
}# 创建并启动线程
for i in range(total_threads):thread = threading.Thread(target=worker, args=(i,))thread.start()threads.append(thread)# 等待所有线程执行完成
for thread in threads:thread.join()print(f'Result: {res}')

使用异步函数

import aiohttp
import asyncio
import reurl = 'http://www.glidedsky.com/level/web/crawler-basic-2'
total_requests = 1000  # 总共地请求次数
concurrent_requests = 10  # 同时并发的请求数量
res = 0headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.54','Cookie': ''
}async def fetch_url(session, temp_url):async with session.get(temp_url, headers=headers) as response:html = await response.text()pattern = re.compile('<div class="col-md-1">.*?(\d+).*?</div>', re.S)n_list = re.findall(pattern, html)return [int(n) for n in n_list]async def main():async with aiohttp.ClientSession() as session:tasks = []for i in range(1, total_requests + 1):temp_url = url + '?page=' + str(i)tasks.append(fetch_url(session, temp_url))if len(tasks) >= concurrent_requests or i == total_requests:results = await asyncio.gather(*tasks)for n_list in results:for n in n_list:global resres += ntasks = []loop = asyncio.get_event_loop()
loop.run_until_complete(main())print(f'Result: {res}')

时间统计:同步的方式大概80s,多线程和异步时间差不多都是20s左右

http://www.yidumall.com/news/48355.html

相关文章:

  • 县区网站集约化平台建设研究优化大师免费安装下载
  • 建筑设计专业的网站做广告推广哪个平台好
  • 十大个人博客网站今日热搜
  • 做网站须知网络运营课程培训班
  • 昆明网站建设咨询百度搜索怎么优化
  • 做视频的网站靠什么收入安卓手机优化大师官方下载
  • 国内做网站大公司百度网址入口
  • 做单挣钱的网站营销策略ppt模板
  • 怎样做网站推广啊抖音下载百度安装到桌面
  • 江苏做网站xlec深圳优化公司找高粱seo服务
  • 做网站链接怎么做营销型网站名词解释
  • 门户网站 模板电商平台引流推广
  • .net网站架设网络推广文案怎么写
  • 标准化班组建设网站武汉网站搜索引擎优化
  • 做旅游网站的方法中国50强企业管理培训机构
  • ps设计网站百度小说排行榜风云榜单
  • 国外做耳机贸易的平台网站微网站
  • 深圳网站建设网站怎么优化自己网站的关键词
  • 网店都有哪些平台google seo 优化教程
  • 表白制作网站百度站长工具怎么查排名
  • 海外免备案网站什么叫网络营销
  • 破解网站后台密码有人做吗济南网站建设制作
  • 网上商城制作教程seo优化有百度系和什么
  • 中企动力企业邮箱 手机邮箱广州关于进一步优化疫情防控措施
  • 做网站公司需要多少钱株洲最新今日头条
  • 公众号名字推荐创意seo短视频网页入口引流免费
  • 自己做网站新手入门深圳网络整合营销公司
  • 毕业设计网站开发实施步骤网络运营好学吗
  • 郑州企业网站快速优化多少钱百度提交入口
  • 织梦企业黄页网站源码资源网站优化排名优化