安装及使用scrapy爬虫框架

1、安装命令:pip install scrapy
mac电脑使用这个命令应该能直接安装成功,但是windows系统和Ubuntu系统在使用安装命令会抱一个错误

building ‘twisted.test.raiser’ extension 
error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools”: http://landinghub.visualstudio.com/visual-cpp-build-tools

需要安装一个C++的编译环境,但是安装C++可能会有点慢,所以可以到网上下载编译好的,网址如下:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
在这里插入图片描述
下载对应的版本就行。

然后安装Twisted,
pip install 路径/Twsited-18.9.0-cp36-cp36m-win_amd64.whl
如:pip install C:\Users\Local\Programs\Python36\Scripts\Twsited-18.9.0-cp36-cp36m-win_amd64.whl

运行完之后再运行pip install scrapy应该就没有问题了。

2、安装完之后导入scrapy就能使用了

import scrapy
# 定义一个类 继承scrapy.Spider
class MinimalSpider(scrapy.Spider):
    # 爬虫名
    name = 'minimalspider'
	# start_requests发送请求
    def start_requests(self):
        print('1.start_request...')
        urls = [‘网页地址’]

        # 非阻塞
        for url in urls:
            req = scrapy.Request(url,callback=None)
            yield req
        
        # 阻塞
        # resp = []
        # for url in urls:
        #     # callback为None时默认回调parse方法
        #     req = scrapy.Request(url=url, callback=None)
        #     resp.append(req)
        # return resp
	# 返回response进行解析
    def parse(self, response):
        print('2.parse...')
        print(response)
        print(response.body)

运行命令:scrapy runspider 文件名称.py
windows运行的时候下可能会报一个错误,ImportError: No module named win32con或者ImportError: No module named win32api,这是因为windows没有win32api的库,Python没有自带访问Windows系统API的库,需要自行下载。
这时候则安装一下这个库,名字叫做pywin32
执行pip install pywin32命令即可
如果还不行,就到
https://sourceforge.net/projects/pywin32/files/pywin32/
下载自己版本的pywin32

3、用scrapy创建一个爬虫项目
1、创建项目:
scrapy startproject project_name
2、创建spider
cd project_name
scrapy genspider spider_name www.xxxx.com(爬取的网址)
3、目录结构

.
├── hangzhounews   -- 项目根目录
│   ├── __init__.py
│   ├── __pycache__  --python运行临时文件  pyc
│   │   ├── __init__.cpython-36.pyc
│   │   └── settings.cpython-36.pyc
│   ├── items.py     -- 用来定义爬取哪些内容  (类似Django中的models)
│   ├── middlewares.py  --中间件
│   ├── pipelines.py    --管道,用来处理爬取的数据
│   ├── settings.py     --配置文件
│   └── spiders         --自定义爬虫包
│       ├── __init__.py
│       ├── __pycache__
│       │   └── __init__.cpython-36.pyc
│       └── hangzhou.py --一个爬虫文件
└── scrapy.cfg   -- 部署时候用的配置文件

在项目下的终端输入:scrapy 可查看一些命令

Available commands:
  bench         Run quick benchmark test
  check         Check spider contracts
  crawl         Run a spider
  edit          Edit spider
  fetch         Fetch a URL using the Scrapy downloader
  genspider     Generate new spider using pre-defined templates
  list          List available spiders
  parse         Parse URL (using its spider) and print the results
  runspider     Run a self-contained spider (without creating a project)
  settings      Get settings values
  shell         Interactive scraping console
  startproject  Create new project
  version       Print Scrapy version
  view          Open URL in browser, as seen by Scrapy

Use "scrapy <command> -h" to see more info about a command
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值