摘要:Selenium Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器)。 Selenium 可以根据我们
阅读全文
摘要:JavaScript JavaScript 是网络上最常用也是支持者最多的客户端脚本语言。它可以收集 用户的跟踪数据,不需要重载页面直接提交表单,在页面嵌入多媒体文件,甚至运行网页游戏。 我们可以在网页源代码的<scripy>标签里看到,如: jQuery jQuery 是一个十分常见的库,70%
阅读全文
摘要:Queue(队列对象) Queue是python中的标准库,可以直接import Queue引用;队列是线程间最常用的交换数据的形式 python下多线程的思考 对于资源,加锁是个重要的环节。因为python原生的list,dict等,都是not thread safe的。而Queue,是线程安全的
阅读全文
摘要:博客实例: 爬取博客园文章列表,假设页面的URL是https://www.cnblogs.com/loaderman 要求: 使用requests获取页面信息,用XPath / re 做数据提取 获取每个博客里的标题,描述,链接地址,日期等 保存到 json 文件内 代码 效果:
阅读全文
摘要:数据提取之JSON与JsonPATH JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。适用于进行数据交互的场景,比如网站前台与后台之间的数据交互。 JSON和XML的比较可谓不相上下。 P
阅读全文
摘要:使用BeautifuSoup4解析器,将招聘网页上的招聘单位名称存储出来。其他信息可类似爬取即可 效果:
阅读全文
摘要:CSS 选择器:BeautifulSoup4 和 lxml 一样,Beautiful Soup 也是一个HTML/XML的解析器,主要的功能也是如何解析和提取 HTML/XML 数据。 lxml 只会局部遍历,而Beautiful Soup 是基于HTML DOM的,会载入整个文档,解析整个DOM树
阅读全文
摘要:用XPath来做一个简单的爬虫,尝试爬取某个贴吧里的所有帖子,并且将该这个帖子里每个楼层发布的图片下载到本地。 效果:
阅读全文
摘要:什么是XML XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 的标签需要我们自行定义。 XML 被设计为具有自我描述性。 XML 是 W3C 的推荐标准 W3School官
阅读全文
摘要:用正则表达式进行对爬取到的全部网页源代码进行筛选。 网站: https://www.cnblogs.com/loaderman/default.html?page=1 打开之后,不难看到里面一个一个灰常有内涵的段子,当你进行翻页的时候,注意url地址的变化: 第一页url: https://www.
阅读全文
摘要:爬虫一共就四个主要步骤: 对于down下了的数据是全部的网页,这些数据很庞大并且很混乱,大部分的东西无用的,因此需要将过滤和匹配出来。 那么对于文本的过滤或者规则的匹配,最强大的就是正则表达式,是Python爬虫世界里必不可少的神兵利器。 什么是正则表达式 正则表达式,又称规则表达式,通常被用来检索
阅读全文
摘要:Requests: 让 HTTP 服务人类 虽然Python的标准库中 urllib2 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests 自称 “HTTP for Humans”,说明使用更简洁方便。 Requests 唯一的一个非转基因的 Py
阅读全文
摘要:urllib2 的异常错误处理 在我们用urlopen或opener.open方法发出一个请求时,如果urlopen或opener.open不能处理这个response,就产生错误。 这里主要说的是URLError和HTTPError,以及对它们的错误处理。 URLError URLError 产生
阅读全文
摘要:Handler处理器 和 自定义Opener opener是 urllib2.OpenerDirector 的实例,urlopen是一个特殊的opener(也就是模块已经构建好的)。 但是基本的urlopen()方法不支持代理、cookie等其他的HTTP/HTTPS高级功能。所以要支持这些功能:
阅读全文
摘要:所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。 在Python中有很多库可以用来抓取网页,urllib2库基本使用。 urllib2 是 Python2.7 自带的模块(不需要下载,导入即可使用) urllib2 官方文档:https://docs.python.or
阅读全文
摘要:根据使用场景,网络爬虫可分为 通用爬虫 和 聚焦爬虫 两种. 通用爬虫 通用网络爬虫 是 捜索引擎抓取系统(Baidu、Google、Yahoo等)的重要组成部分。主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份。 通用搜索引擎(Search Engine)工作原理 通用网络爬虫
阅读全文
摘要:webmagic框架:http://webmagic.io/ WebMagic的结构分为Downloader、PageProcessor、Scheduler、Pipeline四大组件 PageProcessor主要分为三个部分,分别是爬虫的配置、页面元素的抽取和链接的发现。 Pipeline用于保存
阅读全文
摘要:java中调用,借助jython.jar,并将bs4文件拷贝在当前文件夹下即可 可在当前文件夹看到json文件
阅读全文
摘要:爬虫是 模拟用户在浏览器或者App应用上的操作,把操作的过程、实现自动化的程序 当我们在浏览器中输入一个url后回车,后台会发生什么?比如说你输入https://www.baidu.com 简单来说这段过程发生了以下四个步骤: 查找域名对应的IP地址。 浏览器首先访问的是DNS(Domain Nam
阅读全文