Rumah  >  Artikel  >  pembangunan bahagian belakang  >  pyquery解析器无法获取标签名dom节点的解决方法

pyquery解析器无法获取标签名dom节点的解决方法

不言
不言ke hadapan
2018-10-09 15:50:562398semak imbas

本篇文章给大家带来的内容是关于pyquery解析器无法获取标签名dom节点的解决方法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

作为一位正经的前端开发人员,在学习python的过程中,自然而然选择了pyquery这款解析器,毕竟和前端的jquery一样省去了很多学习的时间。
但是在使用过程中发现一个问题,pyquery竟然无法像jquery一样很方便的去筛选dom节点。  
经过一番排查发现:对于class类名,pyquery依然可以方便的获取节点,但是当使用如:a,p,img...等原生标签时,无论如何都获取不到节点。  
一度让我很奔溃...

罪魁祸首

<div xmlns="http://www.w3.org/1999/xhtml" class="image-item-inner" style="width: 398px; height: 598px;"><img src="http://p3.pstatp.com/origin/3f240001a4f84996876d"
    data-src="http://p3.pstatp.com/origin/3f240001a4f84996876d" alt="" /> <a href="http://p3.pstatp.com/origin/3f240001a4f84996876d"
    title="查看原图" target="_blank" ga_event="view_original_photo" class="image-origin"><i class="bui-icon icon-enlarge"
      style="font-size: 14px; color: rgb(255, 255, 255);" /></a></div>

其实问题就出在xmlns="http://www.w3.org/1999/xhtml"这里,pyquery默认解析后的文档是xmlns格式,而这种格式就是造成无法获取原生标签的原因。

 doc = pq(browser.page_source,parser="html")

解决方法就是在解析时配置parser="html",问题迎刃而解。

Atas ialah kandungan terperinci pyquery解析器无法获取标签名dom节点的解决方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:segmentfault.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam