BeautifulSoup及lxml使用小记

来源:互联网 发布:java线程安全的集合 编辑:程序博客网 时间:2024/06/02 17:19

  1. Bs4中常用findallclass_来寻找节点

book_cover=soup.find_all("div",class_='cover')

得到的结果是存在列表中的bs4 tree,仍旧可以用findall遍历

 

遇到有些只有标签的,没有任何属性的,想要的到标签中的内容,可以寻找兄弟节点

find_next_siblings()找下一个兄弟节点

          还有find_parent()找父节点

find_all_next()找到与当前元素靠近的所有对象。而find_next()找到离当前元素最接近的对象。

这些都与previous相对应

 2.lxml中可以用cssselectxpath寻找节点

books=html.cssselect('div.covera')

 

   3.  获得属性的值:

         两者都可以用get("属性名")的方法

       也可以用soup.tagName['属性名']

   4.  获得标签包含的文本:

         定位到节点后使用 .text属性   

 

    5.注意区别findfindallfind找到的结果只有一个,以树结构返回,findall找到所有满足条件的,以列表形式返回

    6.在抓取内容时,注意观察,有规律的话找到所有包含想要信息的树块,然后循环在一个树块中找

 

0 0
原创粉丝点击