摘要: Settings Scrapy设置(settings)提供了定制Scrapy组件的方法。可以控制包括核心(core),插件(extension),pipeline及spider组件。比如 设置Json Pipeliine、LOG_LEVEL等。 参考文档:http://scrapy-chs.read 阅读全文
posted @ 2018-10-15 15:36 joshua&&chen 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 反反爬虫相关机制 (有些些网站使用特定的不同程度的复杂性规则防止爬虫访问,绕过这些规则是困难和复杂的,有时可能需要特殊的基础设施,如果有疑问,请联系商业支持。) 来自于Scrapy官方文档描述:http://doc.scrapy.org/en/master/topics/practices.html 阅读全文
posted @ 2018-10-15 15:25 joshua&&chen 阅读(324) 评论(0) 推荐(0) 编辑
摘要: Request Request 部分源码: 其中,比较常用的参数: Response 大部分参数和上面的差不多: 发送POST请求 可以使用 yield scrapy.FormRequest(url, formdata, callback)方法发送POST请求。 如果希望程序执行一开始就发送POST 阅读全文
posted @ 2018-10-15 15:23 joshua&&chen 阅读(344) 评论(0) 推荐(0) 编辑
摘要: CrawlSpiders 通过下面的命令可以快速创建 CrawlSpider模板 的代码: scrapy genspider -t crawl tencent tencent.com 上一个案例中,我们通过正则表达式,制作了新的url作为Request请求参数,现在我们可以换个花样... class 阅读全文
posted @ 2018-10-15 15:21 joshua&&chen 阅读(184) 评论(0) 推荐(0) 编辑
摘要: Spider Spider类定义了如何爬取某个(或某些)网站。包括了爬取的动作(例如:是否跟进链接)以及如何从网页的内容中提取结构化数据(爬取item)。 换句话说,Spider就是您定义爬取的动作及分析某个网页(或者是有些网页)的地方。 class scrapy.Spider是最基本的类,所有编写 阅读全文
posted @ 2018-10-15 15:19 joshua&&chen 阅读(171) 评论(0) 推荐(0) 编辑
摘要: Item Pipeline 当Item在Spider中被收集之后,它将会被传递到Item Pipeline,这些Item Pipeline组件按定义的顺序处理Item。 每个Item Pipeline都是实现了简单方法的Python类,比如决定此Item是丢弃而存储。以下是item pipeline 阅读全文
posted @ 2018-10-15 15:18 joshua&&chen 阅读(200) 评论(0) 推荐(0) 编辑
摘要: Scrapy Shell Scrapy终端是一个交互终端,我们可以在未启动spider的情况下尝试及调试代码,也可以用来测试XPath或CSS表达式,查看他们的工作方式,方便我们爬取的网页中提取的数据。 如果安装了 IPython ,Scrapy终端将使用 IPython (替代标准Python终端 阅读全文
posted @ 2018-10-15 15:16 joshua&&chen 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 入门案例 学习目标 创建一个Scrapy项目 定义提取的结构化数据(Item) 编写爬取网站的 Spider 并提取出结构化数据(Item) 编写 Item Pipelines 来存储提取到的Item(即结构化数据) 一. 新建项目(scrapy startproject) 在开始爬取之前,必须创建 阅读全文
posted @ 2018-10-15 15:14 joshua&&chen 阅读(430) 评论(0) 推荐(0) 编辑
摘要: Scrapy的安装介绍 Scrapy框架官方网址:http://doc.scrapy.org/en/latest Scrapy中文维护站点:http://scrapy-chs.readthedocs.io/zh_CN/latest/index.html Windows 安装方式 Python 2 / 阅读全文
posted @ 2018-10-15 15:12 joshua&&chen 阅读(171) 评论(0) 推荐(0) 编辑
摘要: Scrapy 框架 Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。 Scrapy 使用了 Twisted['twɪstɪd](其主要对手 阅读全文
posted @ 2018-10-15 15:08 joshua&&chen 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 训练Tesseract 大多数其他的验证码都是比较简单的。例如,流行的 PHP 内容管理系统 Drupal 有一个著 名的验证码模块(https://www.drupal.org/project/captcha),可以生成不同难度的验证码。 那么与其他验证码相比,究竟是什么让这个验证码更容易被人类和 阅读全文
posted @ 2018-10-15 15:05 joshua&&chen 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 尝试对知乎网验证码进行处理: 许多流行的内容管理系统即使加了验证码模块,其众所周知的注册页面也经常会遭到网络 机器人的垃圾注册。 那么,这些网络机器人究,竟是怎么做的呢?既然我们已经,可以成功地识别出保存在电脑上 的验证码了,那么如何才能实现一个全能的网络机器人呢? 大多数网站生成的验证码图片都具有 阅读全文
posted @ 2018-10-15 15:03 joshua&&chen 阅读(559) 评论(0) 推荐(0) 编辑
摘要: 处理给规范的文字 你要处理的大多数文字都是比较干净、格式规范的。格式规范的文字通常可以满足一些需求,不过究竟什么是“格式混乱”,什么算“格式规范”,确实因人而异。 通常,格式规范的文字具有以下特点: 使用一个标准字体(不包含手写体、草书,或者十分“花哨的”字体) • 虽然被复印或拍照,字体还是很清晰 阅读全文
posted @ 2018-10-15 14:48 joshua&&chen 阅读(610) 评论(0) 推荐(0) 编辑
摘要: 机器视觉 从 Google 的无人驾驶汽车到可以识别假钞的自动售卖机,机器视觉一直都是一个应用广 泛且具有深远的影响和雄伟的愿景的领域。 我们将重点介绍机器视觉的一个分支:文字识别,介绍如何用一些 Python库来识别和使用在线图片中的文字。 我们可以很轻松的阅读图片里的文字,但是机器阅读这些图片就 阅读全文
posted @ 2018-10-15 14:44 joshua&&chen 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 案例三:执行 JavaScript 语句 隐藏百度图片 模拟滚动条滚动到底部 阅读全文
posted @ 2018-10-15 14:42 joshua&&chen 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 案例二:动态页面模拟点击 阅读全文
posted @ 2018-10-15 14:41 joshua&&chen 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 案例一:网站模拟登录 阅读全文
posted @ 2018-10-15 14:40 joshua&&chen 阅读(127) 评论(0) 推荐(0) 编辑
摘要: Selenium Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器)。 Selenium 可以根据我们 阅读全文
posted @ 2018-10-15 14:38 joshua&&chen 阅读(194) 评论(0) 推荐(0) 编辑
摘要: JavaScript JavaScript 是网络上最常用也是支持者最多的客户端脚本语言。它可以收集 用户的跟踪数据,不需要重载页面直接提交表单,在页面嵌入多媒体文件,甚至运行网页游戏。 我们可以在网页源代码的<scripy>标签里看到,比如: jQuery jQuery 是一个十分常见的库,70% 阅读全文
posted @ 2018-10-15 14:37 joshua&&chen 阅读(338) 评论(0) 推荐(0) 编辑
摘要: 多线程糗事百科案例 案例要求参考上一个糗事百科单进程案例 Queue(队列对象) Queue是python中的标准库,可以直接import Queue引用;队列是线程间最常用的交换数据的形式 python下多线程的思考 对于资源,加锁是个重要的环节。因为python原生的list,dict等,都是n 阅读全文
posted @ 2018-10-15 14:34 joshua&&chen 阅读(483) 评论(0) 推荐(0) 编辑