Python爬虫框架Scrapy有什么快速上手的方法吗?适合新手吗?
装了个这个框架,WIN10 上花了我 1 个多小时真麻烦,晚上在研究。 我有个疑问,如果抓取些比较简单的东西,会不会是脱裤子放屁了? 再一个,phython 语法还么看完,php 也是搞下逻辑处理,调用,是不是很难上手?
Python爬虫框架Scrapy有什么快速上手的方法吗?适合新手吗?
requests 能满足大多数个人需求
Scrapy对新手来说确实有点门槛,但掌握方法后上手很快。核心就三步:
- 安装和项目创建(5分钟搞定):
pip install scrapy
scrapy startproject myproject
cd myproject
scrapy genspider example example.com
- 理解核心组件:
items.py:定义数据结构spiders/:写爬虫逻辑pipelines.py:数据处理settings.py:配置
- 写第一个爬虫:
import scrapy
class ExampleSpider(scrapy.Spider):
name = 'example'
start_urls = ['http://example.com']
def parse(self, response):
# 提取数据就这么简单
title = response.css('h1::text').get()
yield {'title': title}
快速上手的诀窍:
- 先别管中间件、扩展这些高级功能
- 从
scrapy shell开始测试选择器 - 官方教程(docs.scrapy.org)的前三章跟着做一遍
- 用
-o参数自动保存结果:scrapy crawl example -o data.json
新手建议从静态页面爬取开始,避开JavaScript渲染的网站。Scrapy的异步机制一开始可能不习惯,但写几个爬虫后就能掌握基本模式。
总结:照着官方教程练最有效。
既然用 php,那就用 php 自带 curl 就好啦
赞同楼上意见, 用 requests 就好了. 如果你不知道一个东西有什么用, 那么说明你不需要它.
这框架就是给新手用的
你们众说纷纭 我只是不知道哪个框架更好入手
scapy 是速度快,然后会自动处理容错等一系列特性,如果你只抓取很少很少信息的话,建议你去浏览器上用开发者工具获取到 curl。
然后 去这个网站,直接把 curl 输入进去 https://curl.trillworks.com/#python,可以自动替你生成 Python 代码,把 cookie url header 什么都弄好了,你稍微再改改,加加循环什么的大概就能用了。
当然,如果你对 PHP 更熟悉的话,往下看,有选项也可以生成 PHP 的代码。
我在知乎写了一个爬虫入门专栏
有那么三四篇文章是是说 scrapy 的基础用法的
有兴趣的话可以看看
http://zhuanlan.zhihu.com/Ehco-python
scrapy 用了不少 Python 的高级特性,如果不了解的话很容易踩坑。先熟悉 requests 吧
我之前也跟楼主状态差不多,scrapy 上手还是比较快的,只抓简单的网站就是熟悉下 xpath/css 选择器这些东西和 pipeline 处理流程 还有就是数据库的存写 就能抓很多网站了
牛
#4 不能更同意
scrapy 比自己从头造轮子方便多了,就是要理解几个概念和他的工作流程,剩下的基本就是写 xpath 和改参数,好些 class 你自己 override 一下后写别的爬虫也能复用
真要出现了新手解决不了的问题,也有各种 middleware 给你折腾,比如换头换代理什么的
如果自己不太用,就偶尔用一次建议自己造轮子。如果大于三次使用爬虫,建议好好学习下框架。看着官方文档走把。
简单的 没必要用这框架了
这框架适合新手,有编程基础一会儿就能抓网站了。
看官方文档啊,讲的蛮详细的,基础(spider,selector,item,itemloader & processor,pipeline,settings,request & response)搞清楚就可以写简单的爬虫啦,更客制化一些就去看他的 api 和各种中间件
如果对 python 还不够熟悉,那就 php 吧,要大致上理解 scrapy 还是要扎实 python 基础的

