Python xpath获取文本的问题

看英文pdf的时候,遇到不认识的单词,都是复制到网页翻译,很头疼。因为系统是win10,高分屏,有道的取词效果垃圾,一直想做一个python词典,在github看到这个,https://github.com/llf2017/pyDict/blob/master/pyDict.py,跟我想做的差不多。
因为不喜欢用BS,想把提取有道文本的那两行重新写下。
首先
import lxml
然后:
url ='http://dict.youdao.com/w/{}/'.format(word)
res = get_url(url)
tree = html.fromstring(res.content)
分析有道返回的数据(查询share这个单词):

写出下面的xpath表达式:

data = tree.xpath('//div[@id="results"]//div[@class="trans-container"]//ul/li[not(contains(text(),"\n"))]/text()')
# contains函数,contains(string1,string2),如果string1包含string2,则返回true
# //li[not(contains(text(),"\n"))] 返回文本不包括 \n 的 li

直接可以得到单词中文结果的列表

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容