您的位置:首页 > 编程语言 > Python开发

鲲鹏数据开源库python_google_translator介绍

2015-11-18 11:13 876 查看
原文作者:西安鲲之鹏
原文链接:http://www.site-digger.com/html/articles/20130812/68.html
关于KPBroswer:

KPBroswer是一个基于QtWebKit的最小化浏览器程序,通过被第三方程序调用,

能实现对复杂页面加载后数据(例如,复杂Ajax、数据加密)的抓取,支持屏幕截图。

KP是“鲲鹏”二字的拼音首字母。

项目主页:

https://bitbucket.org/qi/kpbroswer/

适用场景:

页面数据动态加载(例如,Ajax过程过于复杂,分析成本太高);

数据加密(客户端JS解密,解密算法难以获取或难以用其它语言实现);

屏幕截图;

跨平台的抓取方案;

依赖库:

PyQt4

Ubuntu下安装方法:sudo apt-get install python-qt4

Windows下安装方法:在这里下载二进制安装包直接安装http://www.riverbankcomputing.co.uk/software/pyqt/download/

调用方法:

若在Linux终端下运行,需要安装Xvfb。Ubuntu下安装方法:apt-get install xvfb xfonts-base xfonts-75dpi xfonts-100dpi xfonts-wqy

调用举例(Linux):xvfb-run python KPBroswer.py http://www.site-digger.com --flags=redice --output="page.html" --screenshot="sitedigger.jpg"

调用举例(Windows):python KPBroswer.py http://www.site-digger.com --flags=redice --output="page.html" --screenshot="sitedigger.jpg"

Usage: KPBroswer.py <URL> [options]

Options:

-h, --help show this help message and exit

-p PROXY, --proxy=PROXY

Proxy to use.

-t TIMEOUT, --timeout=TIMEOUT

The timeout time of loading page.

-f FLAGS, --flags=FLAGS

Flags need to wait for. Semicolon can be used as a

eperator.

-w WAIT_TIMEOUT, --wait_timeout=WAIT_TIMEOUT

The timeout time of waitting for flags.

-g, --gui Whether to show the broswer GUI.

-o OUTPUT, --output=OUTPUT

The output filename.

-s SCREENSHOT, --screenshot=SCREENSHOT

If the value is not empty, take a screenshot and save

it here.

注意:

Linux下不要忘记安装相关字体库,否则截图中的汉字将会是乱码,如下图site-digger-font-problem.jpg所示。

安装后,就正常了,如图site-digger.jpg所示。

示例:

sample.py文件为一个Python以外部程序方式调用KPBroswer.py的示例,其它语言的调用可以参考其实现。

特别说明:该文章为西安鲲之鹏的原创文章 ,你除了可以发表评论外,还可以转载到你的网站或博客,但是请保留源地址,谢谢!!(尊重他人劳动,你我共同努力)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: