python Beautifulsoup用法 (标签选择器)

  • Post author:
  • Post category:python


2.7.3及3.2.2前的版本中的中文版本容错能力低

Find_all

Find_all(name(标签名,例:div,li,p,a,等标签,可以循环遍历),attrs(find_all(“属性(id,name)”,”属性名”)),recursive(递归),text(find_all(text=”***”返回标签里的内容,

<a>内容</a>)),**kwargs)

注:attrs 还可以find_all(id = “***”)形式,class是关键字,要用class_.

Find:把列表里的第一个值返回出来.

CSS选择器:

通过select()直接传入css选择器即可完成选择,可以嵌套选择,还可以通过循环遍历

·选择class,class名前面要加.(点),往后的话要用空格隔开,返回最后一个class名的所有标签名及标签内容,没有则返回空集合。例soup.select(‘.class名 .class名’).

·也可以选择标签,直接输入标签名即可 ,标签后还有标签用空格隔开,返回最后一个符合要求的所有标签名及标签内容,没有则返回空集合soup.select(‘div li a…..’).

·选择id,要在id名前面加上#号,id名对应的标签后还有标签,用空格隔开,同class选择和标签选择同理。返回最后一个id名的所有标签名及标签内容 soup.select(‘#id名 #id名’).

·获取标签属性,使用方法:在for循环中用soup.select(‘标签名’)进行遍历.例:for ul in soup.select(‘ul’):print(ul[‘id’])返回id属性的内容。

·获取内容,使用方法,在for循环中使用soup.select(‘标签名’)进行遍历。例:for li in soup.select(‘li’):print(li.get_text())返回li标签中的内容。



版权声明:本文为qq_41983562原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。