Python爬虫学习手册

爬虫文章 in 简书程序员专题:

like:128-Python 爬取落网音乐

like:127-【图文详解】python爬虫实战——5分钟做个图片自动下载器

like:97-用Python写一个简单的微博爬虫

like:87-爬虫抓取拉勾网职位需求关键词,并生成统计图

like:87-Python爬虫实战(2):爬取京东商品列表

like:85-python爬虫入门(1):爬万本书籍

like:73-Python爬虫(六)--Scrapy框架学习

like:72-Python爬虫(一)--豆瓣电影抓站小结(成功抓取Top100电影)

like:63-Python爬虫框架Scrapy快速入门

like:62-Scrapy爬取图片

like:60-使用Node.js制作爬虫教程(续:爬图)

like:59-使用Scrapy爬取大规模数据

like:55-爬取简书全站文章并生成 API(一)

like:49-教女朋友爬虫

like:48-60小时Python爬虫学习:从100行数据到10W+数据

like:48-Python爬虫(七)--Scrapy模拟登录

like:47-教你从零开始学会写爬虫(Python)

like:46-基于MVP模式开发的带缓存网络爬虫,采用最流行框架搭建,干货多多

like:46-【图文详解】scrapy安装与真的快速上手——爬取豆瓣9分榜单

like:45-Python爬虫初学(三)—— 模拟登录知乎

like:45-Python爬虫(二)--Coursera抓站小结

like:44-Python爬虫学习-大数据统计分析(基础)

like:42-产品经理学Python&爬虫(二):Python基础及爬虫入门

like:42-记一次斗鱼TV弹幕爬虫经历(Ruby版本)

like:40-爬取简书全站文章并生成 API(二)

like:40-33款开源爬虫软件工具 收藏!(你也试试)

like:38-python 爬取一些数据,存入数据库 并生成简单图表

like:37-Python爬虫之抓取APP下载链接

like:37-网络蜘蛛的基本素养(python爬虫入门篇:介绍和原生库)

like:37-斗鱼TV弹幕爬虫(Python版本)

like:36-打造一条爬虫

like:35-Kali Linux Web 渗透测试秘籍 第三章 爬虫和蜘蛛

like:35-【图文详解】scrapy爬虫与Ajax动态页面——爬取拉勾网职位信息(1)

like:34-零基础制作一个Python 爬虫

like:33-Scrapy实战-爬取豆瓣漫画

like:30-Python即时网络爬虫项目: 内容提取器的定义

like:30-使用Node.js制作爬虫教程

like:30-【同行说技术】爬虫学习汇总:Python程序员从小白到大神必读资料汇总(二)

like:29-Python爬虫防封杀方法集合

like:29-5.Python3爬虫入门实践——爬取名著

like:29-java爬虫之下载txt小说

like:29-Python 笔记七:Requests爬虫技巧

like:29-python爬虫:爬取慕课网视频

like:29-【同行说技术】Python开发、调试、爬虫类工具大全

like:27-最简便的爬虫效率提升方法

like:26-一步步教你利用Github开源项目实现网络爬虫:以抓取证券日报新闻为例

like:26-Python自定义豆瓣电影种类,排行,点评的爬取与存储(高阶上)

like:26-Python爬取图虫网摄影作品

like:26-如何做好一款爬虫产品(kimono,importio,八爪鱼试用分析)

like:26-一天就能写 Python 爬虫

like:26-Python爬虫(四)--多线程

like:25-爬虫框架webmagic与spring boot的结合使用

like:23-java简单的爬虫(今日头条)

like:23-用Python爬取实习信息(Scrapy初体验)

like:22-爬取百度图片各种狗狗的图片,使用caffe训练模型分类

like:22-爬取简书全站文章并生成 API(五)

like:22-爬取简书全站文章并生成 API(四)

like:22-爬取简书全站文章并生成 API(三)

like:22-Python爬虫实战(4):豆瓣小组话题数据采集—动态网页

like:22-Python爬虫(五)--多线程续(Queue)

like:21-一个实现批量抓取淘女郎写真图片的爬虫

like:21-Python爬虫实战(3):安居客房产经纪人信息采集

like:21-Scrapy爬取简书用户url分析

like:21-【图文详解】scrapy爬虫与Ajax动态页面——爬取拉勾网职位信息(2)

like:21-来,让我们写一个网络爬虫,下载页面上所有的照片吧!

like:19-node入门场景之——爬虫

like:19-python爬虫入门(2):让你的github项目火起来

like:18-网络爬虫:使用Scrapy框架编写一个抓取书籍信息的爬虫服务

like:18-专栏:006:实战爬取博客

like:18-【开源】爬取QQ空间说说及简易数据分析

like:17-Python实现简单爬虫(爬取下载链接)

like:17-教你一步一步用 Node.js 制作慕课网视频爬虫

like:16-python知乎爬虫(最新)

like:16-Python即时网络爬虫项目启动说明

like:16-用Python爬取妹子图——基于BS4+多线程的处理

like:16-教女朋友爬虫(续)

like:15-爬虫学习之一个简单的网络爬虫

like:15-#Python爬虫手册(一)

like:15-使用Python模拟腾讯第三方认证-篇4 [自动爬取分析及下载]

like:15-python 知乎爬虫

like:14-通过网络图片小爬虫对比Python中单线程与多线(进)程的效率

like:14-利用Beautifusoup爬取网页指定内容

like:14-爬取网页 干货集中营 gank.io

like:13-8.Python3爬虫实例——使用BeautifulSoup4重构爬取名著

like:13-Python爬虫:常用浏览器的useragent

like:13-Ruby+Tesseract爬取学校教务系统

like:12-没壁纸用了?用Jsoup写一个图片爬虫吧!

like:12-写一只"独立"的python爬虫-浅谈用爬虫自行抓取代理ip网站信息

like:12-一个人人网python爬虫

like:12-利用Node写一只小爬虫爬一爬简书

like:12-爬虫抓取ruby-china职位分布图,含代码

like:11-Python爬虫初学(一)—— 爬取段子

like:11-Python爬虫-搜索并下载图片

like:10-简书爬虫

like:10-4.Python3爬虫入门

like:10-爬虫学习之基于Scrapy的网络爬虫

like:10-python3.5爬虫辅助第三方库

like:10-python爬虫入门之模拟登陆新浪微博

like:9-爬虫之刃----赶集网招聘类爬取案例详解(系列四)

like:9-9.Python3爬虫实例——使用Scrapy重构代码爬取名著

like:9-从零开始开发一个App(1)- Scrapy爬虫

like:9-简单爬取豆瓣妹子(Objective-C)

like:9-人脑爬虫

like:9-python爬虫的最佳实践(八)--初探Scrapy

like:9-爬取美少女图片

like:9-Tornado 4.3 文档翻译: 用户指南-并发网络爬虫

like:9-python爬虫入门之qq登陆初探

like:8-为编写网络爬虫程序安装Python3.5

like:8-Python爬虫初学(二)—— 爬百度贴吧小说和图片

like:8-10分钟利用JSoup和CSV爬取58同城二手房信息

like:8-老堂主爬虫交流--百度贴吧模拟回帖

like:8-python爬虫-爬取盗墓笔记

like:8-Python爬虫-re(正则表达式)模块常用方法

like:8-百度指数爬取工具

like:7-原创爬虫开源项目——更新维护

like:7-Python异步爬虫试验[Celery,gevent,requests]

like:7-网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(3): 根据书籍ISBN码抓取amazon.com价格

like:7-网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(1): 基础知识Beautiful Soup

like:7-Python即时网络爬虫项目: 内容提取器的定义(Python2.7版本)

like:7-Python爬取三国演义

like:7-Python自定义豆瓣电影种类,排行,点评的爬取与存储(进阶下)

like:7-小作品: Python QQ 群爬虫 (Update 2016-08-19)

like:7-爬虫的理论知识储备

like:7-豆瓣爬虫

like:7-py爬虫

like:6-新手向爬虫(一)利用工具轻松爬取简书并分析

like:6-第二个爬虫

like:6-Python爬虫爬取美剧网站

like:6-Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容

like:6-python__运用爬虫猜密码

like:5-Pyspider框架 —— Python爬虫实战之爬取 V2EX 网站帖子

like:5-python3+sqlite3+多线程爬取某网站文章

like:5-基于python的爬虫——espider

like:5-基于scrapy框架的关于58同城招聘网站信息的爬取(一)

like:5-简书连载作者福音: 一键生成连载目录和连载作品排行统计(Python爬虫应用)

like:5-nodejs网络爬虫技术详解

like:5-python__超级超级超级简单的一个爬虫小程序

like:5-【HtmlUnit】网页爬虫进阶篇

like:5-python小爬虫抓取搞笑图片V2.0

like:5-python小爬虫抓取搞笑图片

like:4-python异步爬虫

like:4-Python自定义豆瓣电影种类,排行,点评的爬取与存储(进阶上)

like:4-爬虫学习之基于Scrapy的自动登录

like:4-浅析通用爬虫软件—— 集搜客与八爪鱼采集器

like:4-Laravel 下使用 Guzzle 编写多线程爬虫实战

like:4-Python小记:selenium+PhantomJS爬虫解决页面js添加cookie

like:3-爬虫之scrapy-splash——scrapy+js渲染容器

like:3-python爬虫爬房多多链家房源信息

like:3-Python爬取FLASH播放器中的资料

like:3-Python即时网络爬虫:API说明

like:3-xiaolinBot(Twitter笑话集锦爬虫Bot) Step3-适配器

like:3-xiaolinBot(Twitter笑话集锦爬虫Bot) Step1-最简爬虫

like:3-一个爬简书所有历史文章的爬虫

like:2-网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(2): 抓取allitebooks.com书籍信息及ISBN码

like:2-Python: 爬取廖雪峰大神的python教程

like:2-用爬虫抢自如房子

like:2-xiaolinBot(Twitter笑话集锦爬虫Bot) Step0-概述

like:1-写爬小说的爬虫的一些心得

like:1-Python自定义豆瓣电影种类,排行,点评的爬取与存储(初级)

like:0-新手向爬虫(二)——站点分析

like:0-反爬虫策略

like:0-xiaolinBot(Twitter笑话集锦爬虫Bot) Step2-代码优化

使用Scrapy爬取上述列表

安装Scrapy

下载文件:lxmltwisted;并在该页面上搜索scrapy并下载whl文件,最后使用pip install x.whl,x为 whl文件名,依次安装三个文件。

我下载的都是cp35-cp35m-win_amd64.whl,win7安装成功。

简单快速的Scrapy

编辑名为num1.py的文件添加以下内容,使用命令行scrapy runspider num1.py -o 1.json在文件当前所在目录下运行文件,表示使用Scrapy执行该爬虫并将输出数据保存为json文件。

整个爬取过程花费了212.98秒,平均每个页面花费0.053秒

# -*- coding: utf-8-*-# 文本编辑器编码要设置对,最好为UTF-8无BOM编码importscrapyclassNum1Spider(scrapy.Spider):    name ="num1"# 爬虫命名,在项目中有用    allowed_domains = ["jianshu.com"] # 允许爬取的域名    domain ='http://jianshu.com'# 自己设置的基础域名变量    headers = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36",    } # 请求头    base_url ='http://www.jianshu.com/collections/16/notes?order_by=added_at&page=%d'# 关于此处url,参看新手向爬虫(一)    num =0# 页数    def start_requests(self): # 默认的开始函数,用于提供要爬取的链接        # url = self.base_url % self.num        while self.num <4000: # 程序员专题总页数小于4000,共花费212.975027秒            self.num +=1yield scrapy.Request(self.base_url % self.num,                            headers = self.headers,                            callback = self.parse)    def parse(self, response):  # 默认的回调函数,用于链接下载完毕后调用来处理数据        for index,iinenumerate(response.css(".title a::text").extract()):if"爬虫"ini or"爬取"ini:                like = response.css("a + span::text").extract()[index].replace(' · 喜欢 ','')                url = self.domain + response.css('.title a::attr(href)').extract()[index]                yield {"title": i,"like": like,"url": url}######################## Debug ###############################        #fromscrapy.shellimportinspect_response#        inspect_response(response, self)# 将以上两句插入回调函数中任意位置,即可在运行过程中中断打开交互命令行,用于调试查看响应内容######################## Run  ###############################      # scrapy runspider num1.py -o1.json

作者:treelake

链接:http://www.jianshu.com/p/dcd6438ce4c7

來源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

推荐阅读更多精彩内容