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

常德网站设计公司设计方案怎么写格式

常德网站设计公司,设计方案怎么写格式,做网站注册哪些商标,西安网站建设云阔一、scrapy scrapy:为爬取网站数据是,提取结构性数据而编写的应用框架 1. 安装 pip install scrapy 或者,国内源安装 pip install scrapy -i https://pypi.douban.com/simple 2. 报错 报错1)building ‘twisted.te…

一、scrapy

scrapy:为爬取网站数据是,提取结构性数据而编写的应用框架

1. 安装

        pip install scrapy

或者,国内源安装

        pip install scrapy -i https://pypi.douban.com/simple

2. 报错

        报错1)building ‘twisted.test.raiser’ extension

原因:缺少twisted库

解决:下载twisted库:

        a)cp是python版本

        b)amd是操作系统版本

        安装twisted库:

        使用:pip install 拖入twisted路径

twisted库安装完成后,再安装scrapy库

        报错2)提示python -m pip install --upgrade pid

   解决:运行python -m pip install --upgrade pid

        报错3)win32错误

  解决:pip install pypiwin32

        仍然报错)

        解决:安装Aanacoda工具

二、创建scrapy项目

1)创建scrapy项目

在终端中创建项目:

        scrapy startproject 项目名

2)创建爬虫文件

       在spiders文件夹中创建爬虫文件

a)切入spiders目录下:

        cd  项目名\项目名\spiders

 b) 在spiders文件夹中创建爬虫文件

        scrapy genspider 文件名 要爬取的网页

 一般情况下,要爬取的网页之前:不需要添加http协议

        否则start-urls中的路径不成立

  原因:start_urls的值是根据allowed_domains进行修改的,如果添加了http协议,allowed_domains的值需要用户手动修改

import scrapyclass Demo001Spider(scrapy.Spider):# 爬虫的名字:用于运行爬虫时,使用的值name = "demo001"# 允许访问的域名allowed_domains = ["www.baidu.com"]# 起始url地址:指的是第一次要访问的域名# start_urls是在allowed_domains之前添加1个http://  在allowed_domains之后添加1个/start_urls = ["http://www.baidu.com"]
#执行了 start_urls之后执行的方法    方法中的response就是返回的对象 相当于1)response = urllib.requests.urlopen()    2)response = requests.get()def parse(self, response):pass

 3)运行爬虫文件

scrapy crawl 爬虫的名字

 

做了反扒————

 解决:注释掉君子协议:项目下的setting.py文件中的robots.txt协议

注释掉:ROBOTSTXT_OBEY = True

 

 三、scrapy项目结构

项目名

        项目名

                spider文件夹        (存储爬虫文件)

                        init        

                        自定义的爬虫文件        (核心功能文件)

                init

                items        (定义数据结构的地方)(爬取的数据包含哪些)

                middleware        (中间件)(代理)

                pipelines        (管道)(处理下载的数据)

                settings        (配置文件)

四、response的属性和方法

3)4)5)常用

1)response.text

        获取响应的字符串

2)response.body

        获取响应的二进制数据

3)response.xpath

        直接使用xpath方法解析response中的内容

4)response.extract()

        提取selector对象中的data属性值

5)response.extract_first()        

        提取selector对象的第一个数据

五、scrapy工作原理

1). 引擎向spiders要url

2). 引擎将要爬取的url给调度器

3). 调度器将url生成请求对象,放入指定的队列

4). 从队列中出队一个请求

5). 引擎将请求交给下载器进行处理

6).下载器发送请求,向互联网请求数据

7). 下载器将数据返回给引擎

8). 引擎将数据再次给到spiders

9).spiders通过xpath解析数据

10).  spiders将数据,或者url,给到引擎

11). 引擎判断该数据,是数据,还是url

        a)是数据,交给管道处理

        b)还是url,交给调度器处理

六、scrapy shell

        scrapy终端

测试xpath和css表达式

免去了每次修改后,运行spiders的麻烦

进入scrapy shell终端:

        直接在Windows终端输入:scrapy shell 域名

        使用

                终端中直接执行:

                        scrapy shell 域名

安装ipython(高亮,补全)

        pip install ipython

七、懒加载中的src

有data-original,src用data-original替代

替换前:src = // ul[ @ id = "component_59"] / li // img / @ src
替换后:src = // ul[ @ id = "component_59"] / li // img / @ data-original

当当网练习中的第一张图片是none

        原因:没有data-original

 #有data-original,src用data-original替代src = li.xpath('.//img/@data-original').extract_first()# 第一张图片和其他图片标签不一样,第一张图片的src是可以使用的   其他图片的地址是data-originalif src:src = srcelse:#用srcsrc = li.xpath('.//img/@src').extract_first()

当当网:

        items.py:

# Define here the models for your scraped items
#
# See documentation in:
# https://docs.scrapy.org/en/latest/topics/items.html
from urllib import responseimport scrapyclass DemoDdwItem(scrapy.Item):# define the fields for your item here like:# name = scrapy.Field()# pass#图片# src = // ul[ @ id = "component_59"] / li // img / @ srcsrc = scrapy.Field()#名字# alt = // ul[ @ id = "component_59"] / li // img / @ altname = scrapy.Field()#价格# price = //ul[@id = "component_59"]/li//p[@class = "price"]/span[1]/text()price = scrapy.Field()

ddw.py

import scrapyclass NddwSpider(scrapy.Spider):name = "nddw"allowed_domains = ["category.dangdang.com"]start_urls = ["https://category.dangdang.com/cp01.07.30.00.00.00.html"]def parse(self, response):# pass# src、name、price都有共同的li标签# 所有的selector对象,都可以再次调用xpath方法li_list = response.xpath('//ul[@id = "component_59"]/li')for li in li_list:# .extract()提取数据# 有data-original,src用data-original替代src = li.xpath('.//img/@data-original').extract_first()# 第一张图片和其他图片标签不一样,第一张图片的src是可以使用的   其他图片的地址是data-originalif src:src = srcelse:# 用srcsrc = li.xpath('.//img/@src').extract_first()alt = li.xpath('.//img/@alt').extract_first()price = li.xpath('.//p[@class = "price"]/span[1]/text()').extract_first()print(src, name, price)


文章转载自:

http://AJ8WTulF.mcwgn.cn
http://Oi8wVDwZ.mcwgn.cn
http://65Re77BX.mcwgn.cn
http://3VvreUQ6.mcwgn.cn
http://TCvbNxSR.mcwgn.cn
http://tPktum4l.mcwgn.cn
http://yoTxqtaF.mcwgn.cn
http://9UolgR2r.mcwgn.cn
http://FatI0vk9.mcwgn.cn
http://J3Y983kh.mcwgn.cn
http://iRyW9CWO.mcwgn.cn
http://Vztwf65L.mcwgn.cn
http://GfrKNb7H.mcwgn.cn
http://WjKHwmol.mcwgn.cn
http://md5G4F23.mcwgn.cn
http://RN1g25ge.mcwgn.cn
http://CiqooyPQ.mcwgn.cn
http://iQfcQlxr.mcwgn.cn
http://K1TI5Zmc.mcwgn.cn
http://LGCno9Ia.mcwgn.cn
http://Ri9f9wwI.mcwgn.cn
http://TqmKPVCL.mcwgn.cn
http://kbTHWmjZ.mcwgn.cn
http://8F33yzI6.mcwgn.cn
http://K7FT14Pr.mcwgn.cn
http://Nx8ng9sv.mcwgn.cn
http://dtahWWrD.mcwgn.cn
http://Gf3l2wtL.mcwgn.cn
http://MZ3nBJ30.mcwgn.cn
http://ygcUjYjr.mcwgn.cn
http://www.dtcms.com/wzjs/732992.html

相关文章:

  • 最佳网站信誉好的常州网站建设
  • 阿里云 网站接入方式东莞网站设计智能 乐云践新
  • 做网站要到通信管理局备案什么网站做一手项目好
  • 方法网站目录充电网站建设方案
  • 企业门户网站建设新闻凡科客户通
  • 微信网站建设方案pptdede网站wap
  • 陕西建工第三建设集团网站wordpress修改上传
  • 制作网页网站费用属于资本性支出吗天水市建设局网站吊篮管理通知
  • 网站建设安全级别网上免费发布信息
  • 网站做啥内容用户多wordpress商业模板破解
  • 营销型网站分析苏州专业做网站较好的公司有哪些
  • 网站建设+深圳+凡科设计公司官网梁志天
  • 房产官网荆州网站seo
  • 龙岗同乐社区做网站网片价格
  • 宁波网站推广公司排名wordpress转nodejs
  • phpmysql网站开发技术项目式教程广西中小型营销型网站建设公司
  • 潍坊高新区建设局门户网站如何禁止ip访问网站
  • 斯皮尔网站建设网络推广讲师培训
  • 广州市建设工程造价管理站商城网站开发案例
  • 自贡网站开发哪个公司的app软件定制
  • 温州市住房和城乡建设网站如何细分行业 做网站赚钱
  • 成都成华区网站建设南宁做网站开发的公司有哪些
  • 我的网站搜索不到了做3ds磁铁卡网站
  • 做网站设计的电脑需要什么配置编程网址
  • 制作网站团队人员网站设计步骤
  • 无锡免费建设网站自己建公司网站可以嘛
  • 网站续费要多少钱门户网站开发模板
  • 物流网站建设的需求分析搜索引擎优化目标
  • 江西建设局网站wordpress邮件样式
  • 深圳市做网站的国际新闻最近新闻军事