网址:http://yp.120ask.com/search/-0-0--0-0-0-0.html from pyspider.libs.base_handler import * class Handler(BaseHandler): crawl_config = { } @every(minutes=24 * 60) def on_start(self): #进入主页 self.crawl('http://yp.120ask.com/search/-0-0--0-0-0-0.html', c…
1. 写在前面 今天要抓取的一个网站叫做微医网站,地址为 https://www.guahao.com ,我们将通过python3爬虫抓取这个网址,然后数据存储到CSV里面,为后面的一些分析类的教程做准备.本篇文章主要使用的库为pyppeteer 和 pyquery 首先找到 医生列表页 https://www.guahao.com/expert/all/全国/all/不限/p5 这个页面显示有 75952 条数据 ,实际测试中,翻页到第38页,数据就加载不出来了,目测后台程序猿没有把数据返回,…
些一个抓取WEB页面的数据程序比较简单,大多数语言都有相应的HTTP库,一个简单的请求响应即可,程序发送Http请求给Web服务器,服务器返回HTML文件.交互方式如下: 在使用DevProtocol驱动Chrome抓取数据时,交互过程则如下图所示: 此时Chrome在中间充当了一个代理的角色,看上去变得更加复杂了,实际上却对于我们的蜘蛛程序大有帮助.本文就简单的总结下这种方式存在如下优点. 获取动态生成的网页内容 现在很多的网页内容的内容并不是一开是就能直接通过最初的Http请求直接获取到的,…
使用Chrome抓取页面一个非常方便的地方就是它可以执行JS,也就是说我们可以通过JS函数获取我们想要的数据.一个非常强大易用的库就是Jquery,本文就简单的介绍一下使用Chrome获取数据时Jquery的常用用法. 注入Jquery: Jquery是一个第三方库,在浏览器中并不是原生支持.虽然Jquery比较流行,但很多网站还是没有引入Jquery库的.此时我们可以通过执行JS注入Jquery模块,从而支持后续的操作,注入的方式也非常简单: function injectJquery(){…
如果要以自动化的方式驱动Chrome进行数据抓取,必须实现Chrome Dev Protocol协议的客户端.这个协议本身并不复杂,我在之前的文章中也简单的介绍过一下. Google本身有一个Node的实现chrome-remote-interface,对于其它语言,github上也有不少的实现,我也实现过一个,还是非常简单的.不过虽然实现这个协议非常简单,但原始的DevProtocol中是非常底层的API,要使用这些API实现数据抓取还是要进行许多的封装工作的. 为了更加简单的使用Headle…
在前面的文章简单的介绍了一下Chrome调试模式的启动方式,但前面的API只能做到简单的打开,关闭标签操作,当我们需要对某个标签页进行详细的操作时,则需要用到页面管理API.首先我们还是来回顾下获取页面信息: 访问 http://127.0.0.1:9222/json,即可获取如下所示的页面信息 {        "description": "",        "devtoolsFrontendUrl": "/devtools/in…
对于一些简单的网页,我们可以非常容易的通过Develop Tool来获取其请求报文规律,并仿照其构建报文来获取页面信息.但是,随着网页越来越复杂,许多页面是由js动态渲染生成的.要获取这类信息,则需要蜘蛛程序模拟js渲染过程,此时必须研究其js脚本才能完成信息的获取. 虽然从理论上来讲,任何浏览器能获取到的信息,我们完全可以编写爬虫来获取到.但是而这个分析过程往往并不是一个比较麻烦的过程,往往存在如下困难: 逆向分析js费时费力, 许多爬虫作者并不是前端工程师,效率不高 开发阶段容易分析不全,使…
1.代码如下 #! python3 # mapIT.py - Launches a map in the browser using an address from the # command line or clipboard. import webbrowser, sys, pyperclip if len(sys.argv) > 1: #Get address from command line. address = ' '.join(sys.argv[1:]) else: #Get ad…
现在开源的网页抓取程序有很多,各种语言应有尽有. 这里分享一下Python从零开始的网页抓取过程 第一步:安装Python 点击下载适合的版本https://www.python.org/ 我这里选择安装的是Python2.7.11 第二步:安装PythonIDE可以任意选择,这里安转的是PyCharm 点击下载地址:http://www.jetbrains.com/pycharm/download/#section=windows 下载安装后可以选择新建一个项目,然后把需要编译的py文件放在项…
事实上在大部分互联网web产品中,我们一般会用百度统计或者谷歌统计分析系统,通过在程序中引入特定的JS脚本,然后便能够在这些统计系统中看到自己站点页面详细的訪问情况.可是有些时候,因为一些特殊情况,我们须要自己来设计统计系统.因为前段时间公司的业务需求,我也是自己尝试了下,本文提供的是一个基本思路,统计系统也比較简单.   几个基本统计需求: 1.统计web每一个页面用户訪问量 2.统计用户訪问者的和IP地址信息 3.页面之间的跳转情况 4.訪问高峰时间段   server结构: 数据库表设计:…