喜欢用jq写前端的python开发工程师建议使用这个html解析库,因为这个工具使用起来基本就和jquery是一样的,所以可以可以直接上手开始进行开发
我也经常用jquery,所以这里直接列下基础用法,看下就明白了
#!/usr/bin/python3 #coding:utf-8 from pyquery import PyQuery import requests html = requests.get("https://sulao.cn/post/641.html") r = html.text p = PyQuery(r) print(p('title').text()) print(p('title').html()) print(p('.postbottom').text()) print(p('#cancel-reply').text()) print(p('textarea').attr("tabindex", "10")) #修改属性 print(p('textarea').attr("tabindex"))
下面讲讲其他的方法
eq方法,这个是根据给定的索引号得到指定元素
print(p('.menu ul li').eq(1))
filter() ,这个是根据类名、id名得到指定元素
find() ,这个查找嵌套元素
addClass(value) ,这个是为元素添加类,例如:
d = p('<div></div>') d.addClass('my_class') # 返回[<div.my_class>]
hasClass(name) 是返回判断元素是否包含给定的类,返回true和false
children(selector=None) ,这个是获取子元素
parents(selector=None),这个是获取父元素
clone() ,这个是返回一个节点的拷贝
empty() ,这个是移除节点内容
nextAll(selector=None) ,这个是返回后面全部的元素块
not_(selector) ,这个是返回不匹配选择器的元素
常用的基本就这些,可以没事自己练练手