首页 > 技术文章 > pyquery的简单用途、初始化方式、css选择

my-global 2020-03-13 03:06 原文

  pyquery的简单用途:

import pyquery
html="""
<html>
    <title>这是标题</title>
<body>
    <p id="hi">Hello</p>
    <ul>
        <li>list1</li>
        <li>list2</li>
    </ul>
</body>
</html>
"""
pyq=pyquery.PyQuery(html)  #根据字符串初始化
print(pyq('title'))
print(pyq('title').text())   #.text() 取出标签之间的内容
print(pyq("#hi"))   #   #代表id
print(pyq("#hi").text())

lilist=pyq('li')
for line in lilist:
    print(pyq(line).text())  #处理子元素

  pyquery初始化方式:

import pyquery
import lxml.etree
#初始化各种网页
doc1=pyquery.PyQuery("<html></html>")
doc2=pyquery.PyQuery(lxml.etree.fromstring("<html></html>"))
doc3=pyquery.PyQuery("http://www.baidu.com")
doc4=pyquery.PyQuery(filename="index.html")
print(type(doc1))
print(doc1.html)
print(doc1)
print(doc2)
print(doc3)
print(doc4)

  pyquery的css选择:

#coding:utf-8
import pyquery
import lxml.etree
doc=pyquery.PyQuery(filename="index.html")
print(type(doc))
print(doc('head'))  #head标签
print(doc('head  title'))  #head标签  title标签
print(doc('head  title').text())  #标签中间的文本
print("---------------------------")

print(type(doc("#container"))) #list,1个,多个
print(doc("#container")[0])

print(doc("#container").attr["class"]) #list第一个 ,取标签内部属性


#print(doc("#container  .list"))  按照类型取出class=list
#print(doc("#container  .list li"))

 

推荐阅读