windows下搭建爬虫框架

标签: scrapy python windows
41人阅读 评论(0) 收藏 举报
分类:

1.安装python和pip()

2.命令行中运行,从豆瓣源上下载,速度比较快

pip install -i https://pypi.doubanio.com/simple/ virtualenv

3.新建scrapytest的虚拟环境 ,命令行中进入相应目录

D:\Test>virtualenv scrapytest

4.运行activate.bat文件

D:\Test\scrapytest\Scripts>activate.bat

5.运行python

(scrapytest) D:\Test\scrapytest\Scripts>python

6.退出虚拟环境

(scrapytest) D:\Test\scrapytest\Scripts>deactivate.bat

7.创建虚拟环境时指明python版本(补充),指定某个路径下的python.exe

D:\Test> virtualenv ___\python.exe scrapytest

8.安装virtualenvwrapper(辅助执行虚拟环境)

D:\Test\scrapytest\Scripts>pip install virtualenvwrapper-win
9.运行workon
D:\Test\scrapytest\Scripts>workon(查看运行中的虚拟环境)

10.配置WORKON_HOME(提供给workon)

D:\Envs
11.创建virtualenv
D:\Envs>mkvirtualenv py3scrapy
12.退出虚拟环境
(py3scrapy) C:\Users\Administrator>deactivate
13.启动虚拟环境可以通过workon,此时不需要指定路径
C:\Users\Administrator>workon py3scrapy
14.安装软件如requests
C:\Users\Administrator>pip install requests
15.如果安装失败,可以在http://www.lfd.uci.edu/~gohlke/pythonlibs/这个网站上去下载安装(基本为windows版本)
pip install -i https://pypi.doubanio.com/simple/ scrapy 

安装出错,手动去上述网站下载安装,下载好后,进入该文件下载地址通过workon py3scrapy进入虚拟环境,通过命令pip install安装 

C:\Users\Administrator\Downloads>workon py3scrapy
(py3scrapy) C:\Users\Administrator\Downloads>pip install lxml-4.0.0-cp34-cp34m-win32.whl
如果出现twisted安装错误去网上 http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 如上解决

16.创建scrapy项目

如项目创建在 D:\workspace\PycharmProjs 中,需在cmd命令中进入该目录,输入命令workon py3scrapy进入虚拟环境

创建scrapy项目,并将项目导入到pycharm中

(py3scrapy) D:\workspace\PycharmProjs>scrapy startproject ArticleSpider

17.生成默认爬虫代码

(py3scrapy) D:\workspace\PycharmProjs\ArticleSpider>scrapy genspider jobbole blog.jobbole.com

18.命令行运行出现错误

(py3scrapy) D:\workspace\PycharmProjs\ArticleSpider>scrapy crawl jobbole

    ImportError: No module named 'win32api'

安装即可,注意将settings.py中的 ROBOTSTXT_OBEY = False,值要改为False,即不遵守robot协议

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

19.通过shell命令对网页进行调试

(py3scrapy) D:\workspace\PycharmProjs\ArticleSpider>scrapy shell http://blog.jobbole.com/112517/

# 通过xpath获取
>>> title = response.xpath("//*[@id='post-112517']/div[1]/h1/text()")

>>> title
[<Selector xpath="//*[@id='post-112517']/div[1]/h1/text()" data='Linux 大爆炸:一个内核,无数发行版'>]

>>> title.extract()
['Linux 大爆炸:一个内核,无数发行版']

>>> title.extract()[0]
'Linux 大爆炸:一个内核,无数发行版'
	
>>> create_date = response.xpath("//p[@class='entry-meta-hide-on-mobile']")
>>> create_date
[<Selector xpath="//p[@class='entry-meta-hide-on-mobile']" data='<p class="entry-meta-hide-on-mobile">\r\n\r'>]
	
>>> response.xpath("//p[@class='entry-meta-hide-on-mobile']/text()").extract()
['\r\n\r\n    2017/09/19 ·  ', '\r\n     \r\n    \r\n\r\n    \r\n    ·  ', '\r\n            \r\n']
	
>>> response.xpath("//p[@class='entry-meta-hide-on-mobile']/text()").extract()[0].    strip().replace("·","").strip()
'2017/09/19'

>>> response.xpath("//span[contains(@class, 'vote-post-up')]")
[<Selector xpath="//span[contains(@class, 'vote-post-up')]" data='<span data-post-id="112517" class=" btn-'>]

>>> int(response.xpath("//span[contains(@class, 'vote-post-up')]/h10/text()").extract()[0])
1

>>> response.xpath("//span[contains(@class, 'bookmark-btn')]/text()").extract()[0]
'  收藏'

>>> response.xpath("//a[@href='#article-comment']/span").extract()[0]
'<span class="btn-bluet-bigger href-style hide-on-480"><i class="fa fa-comments-o"></i>  评论</span>'

>>> response.xpath("//div[@class='entry']").extract()[0]
获取正文内容

# 通过css获取
>>> response.css(".entry-header h1")
[<Selector xpath="descendant-or-self::*[@class and contains(concat(' ', normalie-space(@class), ' '), ' entry-header ')]/descendant-or-self::*/h1" data='<h1>Lnux 大爆炸:一个内核,无数发行版</h1>'>]
	
>>> response.css(".entry-header h1").extract()
['<h1>Linux 大爆炸:一个内核,无数发行版</h1>']

>>> response.css(".entry-header h1::text").extract()
['Linux 大爆炸:一个内核,无数发行版']

>>> response.css("p.entry-meta-hide-on-mobile::text").extract()[0].strip().replace("·","").strip()
'2017/09/19 ·'

>>> response.css(".vote-post-up h10::text").extract()[0]
'1'

>>> response.css("span.bookmark-btn::text").extract()[0]
'  收藏'

>>> response.css("a[href='#article-comment'] span::text").extract()[0]
' 1 评论'

>>> response.css("div.entry").extract()[0]
'内容'

20.下载图片时需要安装pillow插件

(py3scrapy) C:\Users\Administrator>pip install -i https://pypi.douban.com/simple pillow

21.安装连接mysql的插件mysqlclient

(py3scrapy) C:\Users\Administrator>pip install -i https://pypi.douban.com/simple mysqlclient

查看评论

Wiki——Windows下python2.7 爬虫框架Scrapy环境配置

Wiki——Windows下python2.7 爬虫框架Scrapy环境配置 一个快速,简单,易扩展的的开源爬虫框架。 Scrapy有非常成熟的介绍文档,国内的开发者也对文档进行了大量的翻译,还可以找...
  • u010183402
  • u010183402
  • 2015-08-22 21:24:40
  • 2370

Nutch学习之Win7环境下在eclipse中搭建Nutch+solr+tomcat

最近,因为工作的需要,要获取yi
  • yongyu211
  • yongyu211
  • 2014-07-26 11:37:42
  • 3936

分布式爬虫基本框架

分布式爬虫的基本框架非常简单:服务端→发送数据→客户端→处理数据→客户端→客户端保存数据。 分布式爬虫的优点是大大降低了主机的任务负担,将许多任务分配给各个客户端,让他们把结果返回给主机,然后主机对...
  • ProgramOfApe
  • ProgramOfApe
  • 2017-10-20 20:32:58
  • 148

Windows 10 安装Scrapy 爬虫框架

官方安装文档:http://doc.scrapy.org/en/1.1/intro/install.html1. 安装Python 官网https://www.python.org/download...
  • u012257589
  • u012257589
  • 2017-05-31 17:14:30
  • 1286

python轻量级爬虫的编写

嗯...今天来分享一下如何使用python编写一个简单的网络爬虫。说到爬虫,这简直就是广大懒惰的程序员和宅男们的福音啊,一次编写,想要啥资源就能爬啥资源,高至各种学习资源,论文资料,低至各种图片小视频...
  • Ivan_zgj
  • Ivan_zgj
  • 2016-03-27 18:00:16
  • 3113

社会化海量数据采集爬虫框架搭建(转载)

 社会化海量数据采集爬虫框架搭建     随着BIG DATA大数据概念逐渐升温,如何搭建一个能够采集海量数据的架构体系摆在大家眼前。如何能够做到所见即所得的无阻拦式采集、如何快速把不...
  • kevincol22
  • kevincol22
  • 2016-06-01 12:17:59
  • 188

windows下搭建爬虫框架scrapy

摘要: 主要讲解在windows上搭建scrapy的步骤,该步骤已经在百度上搜索就是一大片的了,但是出于学习以及练习写博客的目的,我还是按照自己的思路写一遍。 最近开始使用python,然...
  • playStudy
  • playStudy
  • 2013-12-13 07:06:01
  • 53943

windows配置Scrapy爬虫框架

一、环境 Windows10 64位 Python2.7.13 64位 下面的安装步骤最好配置代理,可能会遇到被墙的情况。 二、Python的安装 ...
  • wj1637992503
  • wj1637992503
  • 2017-06-09 21:52:06
  • 169

如何构建一个分布式爬虫:基础篇

本文教大家如何构建一个简易的分布式爬虫
  • u014193283
  • u014193283
  • 2017-05-22 22:32:09
  • 931

windows 7 下如何搭建爬虫框架scrapy

一直以来都对Python有兴趣,最近看了好多人利用Python来爬虫,也想学学,于是在windows7 下安装爬虫框架scrapy! 本文主要讲解在windows上搭建scrapy的步骤,有兴...
  • cwt19902010
  • cwt19902010
  • 2017-02-20 21:32:39
  • 458
    个人资料
    持之以恒
    等级:
    访问量: 5761
    积分: 759
    排名: 6万+
    文章存档
    最新评论