利用xpath提取標籤下所有文本

利用xpath提取標籤下所有文本

html 樣式

該網頁源代碼是微博的一部分,我們需要提取博文,但發現

標籤下文本被分割開,這種情況應當如何處理

<div class="content" node-type="like">
                <div class="info">
                    <div class="menu s-fr">
                        <a href="javascript:void(0);" action-type="fl_menu"><i class="wbicon">c</i></a>
                        <ul style="display:none;" node-type="fl_menu_right">
                            <li><a onclick="javascript:window.open('//service.account.weibo.com/reportspam?rid=4488118096861246&amp;type=1&amp;from=10501&amp;url=&amp;bottomnav=1&amp;wvr=6', 'newwindow', 'height=700, width=550, toolbar =yes, menubar=no, scrollbars=yes, resizable=yes, location=no, status=no');" href="javascript:void(0);">投訴</a></li>
                                                    </ul>
                    </div>
                    <div>
                        <a class="name" href="//weibo.com/2864108830?refer_flag=1001030103_" target="_blank" suda-data="key=tblog_search_weibo&amp;value=seqid:158609447248102927726|type:1|t:0|pos:2-0|q:%E7%97%98%E7%97%98%E5%8E%8B%E5%8A%9B|ext:cate:31,mpos:19,click:user_name" nick-name="一Z_c一">一Z_c一</a>
                        <a title="微博達人" href="//club.weibo.com/intro" target="_blank"><i class="icon-vip icon-daren"></i></a>
                        <!--廣告微博加關注按鈕 -->
                                            </div>
                </div>
                <p class="txt" node-type="feed_list_content" nick-name="一Z_c一">
                    忌甜忌辣忌油忌熬夜否則就會長<em class="s-color-red">痘痘</em>變醜 忌咖啡忌可可忌巧克力忌熬夜忌<em class="s-color-red">壓力</em>忌受刺激忌緊張忌生氣否則就會偏頭痛 我也太難了.. ​                </p>
                                                <p class="from">

xpath提取方式

具體代碼如下

blog_content = str(blog.xpath("string(div[@class = 'card']//div/div[2]/p)").strip())

其中blog爲通過提取的博文分塊
代碼如下:

tree = html.fromstring(response.text)
blog_list = tree.xpath("//div[@class='card-wrap']")
print(len(blog_list)
for blog in blog_list:
	......
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章