python - lxml cssselect - 特定部分
问题描述
我需要获取网页的翻译部分。
这是我的python代码:
import urllib.request
u = urllib.request.urlopen("https://docs.python-guide.org/writing/structure/#structure-of-the-repository")
data = u.read()
from lxml import html
information = html.document_fromstring(data)
for content in information.cssselect('ul li a'):
print(content.text_content())
最后,我也得到了目录部分,我不知道如何过滤信息。
什么是实现这一目标的正确方法?
我不得不说我从来没有使用过python,我对此的了解是有限的。
解决方案
你可以得到所有ul
,然后用正确的一个得到li a
我发现 6thul
有你的数据
for content in information.cssselect('ul')[6].cssselect('li a'):
print(content.text_content())
结果
English
French
Chinese
Japanese
Korean
Filipino
Brazilian Portuguese
编辑:相同的使用xpath
需要7
而不是6
因为它开始计数1
而不是0
for content in information.xpath('(//ul)[7]/li/a'):
print(content.text_content())
推荐阅读
- javascript - 我想显示一个“加载”微调器,直到数据完全从服务器加载。如何在 javascript 中为 salesforce lwc 执行此操作?
- x86 - 什么是辅助/辅助负载?
- laravel - 在邮递员中不断出错,如下所示?无法得到任何回应
- javascript - 在所有输入表单都填写多个表单之前,下一个按钮无法使用
- c++ - RTEMS工具和内核安装问题
- python - 递归返回函数
- android - Firebase/Android Studio:如何检查 firebase 数据中的子字符串?
- c# - 如何隐藏默认工具栏AppBar
- react-redux - 在哪里使用 React 中的 Hooks 定义需要来自全局状态的数据的套接字事件侦听器
- c - 我想使用 sigaction(),但我有问题