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

网站的代理页面怎么做的杭州seo培训

网站的代理页面怎么做的,杭州seo培训,网页搜索栏隐藏了,定制型网站建设渠道在互联网数据采集领域,Scrapy框架以其强大的异步处理能力而著称。Scrapy利用了Python的异步网络请求库,如twisted,来实现高效的并发数据采集。本文将深入探讨Scrapy框架的异步处理能力,并展示如何在当当网数据采集项目中应用这一能…

Python_00025.png
在互联网数据采集领域,Scrapy框架以其强大的异步处理能力而著称。Scrapy利用了Python的异步网络请求库,如twisted,来实现高效的并发数据采集。本文将深入探讨Scrapy框架的异步处理能力,并展示如何在当当网数据采集项目中应用这一能力。

1. Scrapy框架概述

Scrapy是一个快速的、高层次的web爬虫框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy的异步处理能力主要得益于其底层的twisted异步网络库。

1.1 Scrapy架构

Scrapy的架构可以分为几个主要部分:

  • 引擎(Engine):负责控制数据流在系统中的所有组件之间的流动,并在某些动作发生时触发事件。
  • 爬虫(Spiders):负责解析响应并生成爬取的URL和/或提取数据(即Item)。
  • 调度器(Scheduler):负责接收引擎发送的请求,并将其入队列以待之后处理。
  • 下载器(Downloader):负责获取网页数据。
  • 项目管道(Item Pipeline):负责处理爬虫从网页中抽取的数据。
  • 下载器中间件(Downloader Middlewares):位于Engine和Downloader之间,主要是处理引擎与下载器之间的请求和响应。
  • 爬虫中间件(Spider Middlewares):位于Engine和Spider之间,主要是处理蜘蛛的输入(响应)和输出(提取的数据,即Item)。

1.2 异步处理的优势

Scrapy的异步处理能力使得它能够在单个爬虫实例中同时处理多个请求和响应,这大大提高了数据采集的效率。异步处理的优势包括:

  • 提高效率:并发处理多个请求,减少等待时间。
  • 节省资源:相比多进程或多线程,异步IO使用更少的系统资源。
  • 易于扩展:Scrapy的架构支持水平扩展,易于在多台机器上运行。

2. 实现当当网数据采集

首先,确保安装了Scrapy。
使用Scrapy创建一个新的项目:
items.py文件中定义当当网数据的结构。
编写爬虫
spiders/doudang_spider.py文件中编写爬虫:

import scrapy
from doudang_spider.items import DoudangBookItemclass DoudangSpider(scrapy.Spider):name = 'doudang'allowed_domains = ['dangdang.com']start_urls = ['http://dangdang.com'] def __init__(self, *args, **kwargs):super(DoudangSpider, self).__init__(*args, **kwargs)self.proxy = 'http://{}:{}'.format(self.proxyHost, self.proxyPort)self.auth = (self.proxyUser, self.proxyPass)def parse(self, response):for book in response.css('div.product'):item = DoudangBookItem()item['title'] = book.css('h3::text').get()item['price'] = book.css('.price::text').get()item['description'] = book.css('.description::text').get()item['url'] = response.urljoin(book.css('a::attr(href)').get())yield item# 在 settings.py 中添加以下配置
DOWNLOADER_MIDDLEWARES = {'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110,
}PROXY_HOST = 'www.16yun.cn'
PROXY_PORT = '5445'
PROXY_USER = '16QMSOML'
PROXY_PASS = '280651'

2.1 异步处理

Scrapy的异步处理主要通过twisted库实现。在爬虫中,可以通过meta传递消息给下一个请求,实现请求的异步处理:

python
def parse(self, response):for book in response.css('div.product'):# ... 省略其他代码yield scrapy.Request(url=item['url'],callback=self.parse_book_detail,meta={'item': item})def parse_book_detail(self, response):item = response.meta['item']# 处理书籍详情item['description'] = response.css('.detail-description::text').get()yield item

3. 性能优化

3.1 并发设置

settings.py中设置并发请求的数量:

python
CONCURRENT_REQUESTS = 32

3.2 下载延迟

设置下载延迟,以避免对网站服务器造成过大压力:

python
DOWNLOAD_DELAY = 1.0  # 每秒请求一次

3.3 自动限制

Scrapy还提供了自动限制请求速率的功能:

python复制
AUTOTHROTTLE_ENABLED = True
AUTOTHROTTLE_START_DELAY = 5.0
AUTOTHROTTLE_MAX_DELAY = 60

关于文章代理有需要的小伙伴可以关注获取免费测试:https://v.16yun.cn/accounts/phone_register/?sale_user=ZM_seven7

http://www.dt0577.cn/news/46927.html

相关文章:

  • 杰商网站建设百度网盘搜索引擎入口哪里
  • 政府门户网站的建设方案网络推广和运营的区别
  • 专门做t恤的网站百度首页清爽版
  • 本地主机做网站服务器seo营销怎么做
  • 本溪网站开发公司深圳优化怎么做搜索
  • 网站怎么做背景图片网站建设与网页设计制作
  • 感觉做的比较好的健身网站青岛seo搜索优化
  • 自己怎么拍做美食视频网站建网站多少钱
  • 北京做网站好公司百度推广开户
  • 个人制作的网站网站开发建站
  • 网站SEO优化实训福州seo网站管理
  • 知名网站欣赏2023年4月疫情恢复
  • 杭州萧山网站建设公司公司网站推广方案
  • 做视频网站设备需求2021近期时事新闻热点事件
  • web制作企业门户网站网站建设服务商
  • 企业所得税会计分录怎么做镇江百度关键词优化
  • 做游戏模板下载网站有哪些百度竞价排名正确解释
  • 靠比较好的软件网站经典seo伪原创
  • 网站设计的公司怎么样优化设计英语
  • 使用vue.js做企业网站广州网站营销推广
  • 手机访问pc网站跳转朝阳区seo搜索引擎优化怎么样
  • 茂名网站优化今天的病毒感染情况
  • 做网站编辑心得seo排名点击软件
  • 广州网站建设年底促销有哪些免费网站可以发布广告
  • 网站收录怎么设置seo引擎优化怎么做
  • 杭州企业建站模板seo基础教程
  • 盗用别人网站图做网站舆情视频
  • 深圳专业o2o网站设计公司四川疫情最新消息
  • 做网站编辑是不是也要做推广日照seo公司
  • 网站建设策划书参考案例现在感染症状有哪些