pyrailgun 网页抓取工具

程序名称:pyrailgun

授权协议: MIT

操作系统: 跨平台

开发语言: Python

pyrailgun 介绍

这是一个非常简单易用的抓取工具

怎么使用? 首先你需要创建一个对应站点的规则文件 比如test.json

{
    "name": "bing searcher",
    "action": "main",
    "subaction": [
        {
            "action": "fetcher",
            "url": "http://www.bing.com/search?q=${@q}",
            "timeout": 1,
            "subaction": [
                {
                    "action": "parser",
                    "subaction": [
                        {
                            "action": "shell",
                            "subaction": [
                                {
                                    "action": "parser",
                                    "setField": "title",
                                    "pos": 0,
                                    "rule": "a",
                                    "strip": "true"
                                },
                                {
                                    "action": "parser",
                                    "setField": "description",
                                    "pos": 0,
                                    "rule": "p"
                                }
                            ],
                            "group": "default"
                        }
                    ],
                    "rule": "#results .sa_wr"
                }
            ]
        }
    ]
}

然后在代码里面把它作为一个任务加入到railgun

from railgun import RailGun

railgun = RailGun()
railgun.setTask(file("testsite.yaml"));
railgun.fire();
nodes = railgun.getShells('default')
print nodes

然后你就可以得到一个包含了所有解析后数据的节点列表
[{img:xxx,src:xxx,score:xxx,dest:xxx,description:xxx},{img:xxx,src:xxx,score:xxx,dest:xxx,description:xxx}]

同时支持用webkit内核运行javascript抓取网页,css方式的dom选择方式

跨平台 支持windows

pyrailgun 官网

https://pypi.python.org/pypi/pyrailgun

相关编程语言

Pacman 是一个软件包管理器, 作为 ArchLinux 发行版...
Smb4K 是KDE下的网络共享浏览器 更多屏幕截图请看:...
Wine (“Wine Is Not an Emulator” 的首字母缩写)...
虚拟桌面软件,可管理最多9个虚拟桌面,你可以用热键...
UNetbootin (Universal Netboot Installer)为一种跨...
Cobbler 可以用来快速建立 Linux 网络安装环境,它已...