栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python的scrapy框架_Python网络爬虫框架Scrapy从入门到精通?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python的scrapy框架_Python网络爬虫框架Scrapy从入门到精通?

安装

Linux/mac系统:
      pip install scrapy(任意目录下)

Windows系统:

a. pip install wheel(任意目录下)

b. 下载twisted文件,下载网址如下: http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted

 c. 终端进入下载目录,执行 pip install Twisted‑17.1.0‑cp35‑cp35m‑win_amd64.whl
      注意:如果该步骤安装出错,则换一个版本的whl文件即可

d. pip install pywin32

e. pip install scrapy 安装完以上依赖后才可以安装scrapy

f.执行scrapy ,验证是否安装完成

基本使用     创建项目

a.找到一个目录,执行以下命令:scrapy startproject scrapyProject,会生成一个名为scrapyProject,最后生成的结构如下:

```
      scrapyProject # 项目所在文件夹, 建议用pycharm打开该文件夹
          ├── scrapyProject   # 项目跟目录一样
          │   ├── __init__.py
          │   ├── items.py  		# 封装数据的格式
          │   ├── middlewares.py    # 所有中间件
          │   ├── pipelines.py	    # 所有的管道
          │   ├── settings.py		# 爬虫配置信息
          │   └── spiders			# 爬虫文件夹, 里面会写入爬虫代码
          │       └── __init__.py
          └── scrapy.cfg			# scrapy项目配置信息,不要做任何操作
      
```
创建爬虫爬虫文件

a.pycharm打开项目后,在terminal下执行:scrapy genspider 爬虫文件名 任意地址

如:scrapy genspider first www.xxx.com

创建成功后,会在爬虫文件夹(spiders)下生成一个叫first.py的爬虫文件

当前文件:D:python_testscrapyProjectscrapyProjectspidersfirst.py

import scrapy
class FirstSpider(scrapy.Spider):
    # name爬虫名称:爬虫文件唯一标识:可以使用该变量的值来定位到唯一的一个爬虫文件
    name = 'first'  # 无需改动
    
    # allowed_domains = ['www.baidu.com'] # 允许的域名:scrapy只可以发起百度域名下的网络请求,一般不用
    
    
    start_urls = ['https://www.baidu.com/', 'https://www.sogou.com'] # 起始的url列表:列表中存放的url可以被scrapy发起get请求


    def parse(self, response):
        '''
          专门用作于数据解析
          参数response:就是请求之后对应的响应对象
          parse的调用次数,取决于start_urls列表元素的个数
        '''
        print('响应对象为:', response)
配置文件修改
当前文件:D:python_testscrapyProjectscrapyProjectsettings.py
添加以下几个配置

ROBOTSTXT_OBEY = False # 不遵从robots协议
LOG_LEVEL = 'ERROR' #指定输出日志的类型
# 指定UA
USER_AGENT = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.109 Safari/537.36'
项目运行
在termainl终端下运行命令
    
scrapy crawl 爬虫名称 :该种执行形式会显示执行的日志信息(推荐)
scrapy crawl 爬虫名称 --nolog:该种执行形式不会显示执行的日志信息(一般不用)

例如:
scrapy crawl first

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/783321.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号