python解析不完全的html_python用lxml解析网页为什么不完整?

url = ‘http://www.ygdy8.com/html/gndy/dyzz/index.html’

req = urllib.request.Request(url)

req.add_header("User-Agent", user_agent)

html_temp = urllib.request.urlopen(req)

网页上那一页,一共有25部电影的链接,其中最后一部电影的链接,也就是:

也就是‘/html/gndy/dyzz/20170731/54631.html’,在html_temp中搜索,看到是有的:

但是,接下来用lmxl解析:

rp_tree = etree.HTML(html_temp )

Node_rp = rp_tree.xpath('//div[@class="co_content8"]//a')

或者用BeautifulSoup:

soup_temp = BeautifulSoup(rp_html, 'html')

后得到的东西(我也不知道得到的这个东西术语怎么叫,如果知道的话也请大佬告诉一下O(∩_∩)O)中,却只有12部电影。我用soup_temp来截图好了:

也就是只分析到了青禾男高,就没了。Node_rp = rp_tree.xpath的也一样:

百度到咱们segment的一个问答BeautifulSoup获取的tag不完整中,我用了soup = BeautifulSoup(text, 'html.parser')就能正确获取。我想问一下这真的是因为html的文件是不规范造成的么?那意思是说,这是写这个网页的人写的不好的问题还是谁的问题?最想问的是,如果不用BeautifulSoup模块的话,而用from lxml import etree我该怎么做?

附上我的环境:

Python 3.6.2

beautifulsoup4 (4.6.0)

bs4 (0.0.1)

lxml (3.7.2)

urllib3 (1.22)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值