javaraylu 2020-03-23
本文记录使用 anaconda 安装 scrapy.
https://docs.anaconda.com/anaconda/install/
我的环境是 windows. 所以安装过程比较简单. 在这里我勾选了两个 checkbox
![[windows] anaconda 安装 scrapy [windows] anaconda 安装 scrapy](https://cdn.ancii.com/article/image/v1/FA/YF/_F/F_YAFFj69EfXcKBuOpmFY7B4ukp1BGaoSm0w30utpofetv9IlngwIQ4bxpvyInAv.png)
然后持续点击 next, 直到安装完成.
打开 anaconda cmd
![[windows] anaconda 安装 scrapy [windows] anaconda 安装 scrapy](https://cdn.ancii.com/article/image/v1/FA/YF/_F/F_YAFFj69EfXcKBuOpmFY7B4ukp1BGaoSm0w30utpoc6viOnDsy8owP646Iv9QF9.png)
执行
conda install scrapy
![[windows] anaconda 安装 scrapy [windows] anaconda 安装 scrapy](https://cdn.ancii.com/article/image/v1/FA/YF/_F/F_YAFFj69EfXcKBuOpmFY7B4ukp1BGaoSm0w30utpodkB39vfqBzu4jox1GUyWCY.png)
此时输入
scarpy
会看到
![[windows] anaconda 安装 scrapy [windows] anaconda 安装 scrapy](https://cdn.ancii.com/article/image/v1/FA/YF/_F/F_YAFFj69EfXcKBuOpmFY7B4ukp1BGaoSm0w30utpodLBCSpTMcA5DsU1sMicJEu.png)
通常会一次成功,在安装过程中,一定不要中断,否则下次安装因之前的文件不会删除,会提示失败。可能需要执行一次
conda clean --lock
scrapy startproject tutorial
然后使用 vs code 打开文件夹
创建爬虫文件, 代码如下
import scrapy
class QuotesSpider(scrapy.Spider):
name = "quotes"
def start_requests(self):
urls = [
‘http://quotes.toscrape.com/page/1/‘,
‘http://quotes.toscrape.com/page/2/‘,
]
for url in urls:
yield scrapy.Request(url=url, callback=self.parse)
def parse(self, response):
page = response.url.split("/")[-2]
filename = ‘quotes-%s.html‘ % page
with open(filename, ‘wb‘) as f:
f.write(response.body)
self.log(‘Saved file %s‘ % filename)你可能会发现 import scrapy 报错: Unable to import scrapy package, 解决方案如下:
此处需要为 vs code 指定一个解释器, 来自 Stack Overflow 的解释: Unable to import scrapy package
ctrl + shift + p
输入 Python: Select Interpreter
我选 anaconda
![[windows] anaconda 安装 scrapy [windows] anaconda 安装 scrapy](https://cdn.ancii.com/article/image/v1/FA/YF/_F/F_YAFFj69EfXcKBuOpmFY7B4ukp1BGaoSm0w30utpocvGuevp6O1ACqCVTpMM351.png)
进入顶层folder目录执行
scrapy crawl quotes
![[windows] anaconda 安装 scrapy [windows] anaconda 安装 scrapy](https://cdn.ancii.com/article/image/v1/FA/YF/_F/F_YAFFj69EfXcKBuOpmFY7B4ukp1BGaoSm0w30utpofTiUtfqw540iaUGTsvWza6.png)
http://www.scrapyd.cn/doc/124.html
https://www.jianshu.com/p/6bc5a4641629