我试图在元素中检索正确的文本。输出如下:
(Pdb) p etree.tostring(els[0])
'<h5 class="msg-delivered" style="padding:0;text-rendering:optimizeLegibility;line-height:1.1;margin-bottom:15px;-webkit-font-smoothing:antialiased;font-family:"Open Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;color:#888888;vertical-align:middle;margin:0;font-size:13px;font-weight:300 !important"> \n<i class="ic-icon-delivered" style="margin:0;padding:0;font-family:"Open Sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizeLegibility;position:relative;background:url(https://d1s8987jlndkbs.cloudfront.net/assets/sprite-ratings-ee0696744f54df6536179c70e24217e3.png) no-repeat -12px -12px;background-size:132px 436px;display:none;vertical-align:middle;width:25px;height:25px;background-position:-16px -16px;top:0"/> \nYour order was delivered \non \n6/4 \n@ \n4:44 PM \n</h5> \n'
(Pdb) p els[0].text
'\r\n'
我怎样才能得到字符串:“你的物品是6/4下午4:40送达的”?我可以在etree.tostring()输出,但想知道els[0].text选项为何不起作用?在
您可以尝试使用xpath函数
string()
,该函数返回当前元素中所有文本节点的串联值:输出:
^{pr2}$如果需要所有文本,只需使用:
也就是说,假设您在html中加载了:
^{pr2}$请注意,您可能希望避免lxml.html.etree.fromstring,只需使用
lxml.html.fromstring
相关问题 更多 >
编程相关推荐