用于在命令行上解析html的css选择器

que的Python项目详细描述


使用css选择器在命令行上对html进行切片和骰子。

快速启动

假设你想抓住所有的链接 http://example.com/foo/bar

$ curl http://example.com/foo/bar | que "a->href"

假设给了你3行这样的代码:

/some/url?val=1
/some/url2?val=2
/some/url3?val=3

呃,那不是很有帮助,所以让我们稍微修改一下我们的论点:

$ curl http://example.com/foo/bar | que "a->http://example.com{href}"

现在,将打印:

http://example.com/some/url?val=1
http://example.com/some/url2?val=2
http://example.com/some/url3?val=3

选择

不知道如何使用css选择器?

选择器分为两部分,第一部分由->分隔 部分是在上述链接和 第二部分是要为每个 匹配:

$ css.selector->attribute,selector

选择器部分使用Python’s string formatting syntaxso 可以将所需的属性嵌入到较大的字符串中。

示例

查找页面上的所有“下载”链接:

que支持非标准的:contains css selector

$ curl http://example.com | que "a:contains(Download)->href"

选择以“foo”开头的属性data的所有链接:

$ curl http://example.com | que "a[data|=foo]->href"

安装

您可以使用pip安装stable:

$ pip install que

或者最新最伟大的 pypi

$ pip install git+https://github.com/jaymon/que#egg=que

注释

  • 如果需要一种功能更全面的html命令行解析器,请尝试 hq

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将jasper集成到jhipster项目中   java无法忽略lombok注释   关于tomcat日志的java问题   java@Autowired未设置字段>NullPointerException   GUI提交按钮不工作   java气泡和选择排序   java如何编写规则来匹配两个数组?   java如何找出某个字符在字符串中的第一次、第二次或第三次出现?   java通过字符串引用id   javascript在网络视图中加载在线图表   java保留web应用程序中用户更改的日志   在安卓中尝试使用Mandrill SMTP发送电子邮件时出现java错误   用java语言将a2b4c5等字符串转换为AABBCCCCC的程序是什么?   java无需TODO即可删除所有注释   java JMX MBean在应用程序部署时自动注册   java如何使用JSON解析从任何url解析数据   java@transactional注释类使用代理包装,但未创建事务   JavaFx转换和打印