requests-html 怎么获取对应的innerText

发布于 2022-09-07 03:39:40 字数 1208 浏览 18 评论 0

requests-html 怎么获取一个 标签的innerText

def stage_catch():
    session = HTMLSession()
    r = session.get('http://www.dmzx.com/manhua/358/')
    div = r.html.find('.subsrbelist')
    list_a = div[0].find('ul')[0].find('a')     # 找到对应目录列表
    for a in list_a:

        print(a)
        print(a.attrs)
        print(a.text)

        # pages = re.sub("\D", "", total_pages)
        # print(pages)
    pass
if __name__ == '__main__':
    stage_catch()

这个是我对应的节点

<a href="http://www.dmzx.com/manhua/358/2000089062.html" title="第360话" target="_blank">
    <span class="red">第360话</span> 
        (18页)
</a>
<Element 'a' href='http://www.dmzx.com/manhua/358/2000089062.html' title='第360话' target='_blank'>
{'href': 'http://www.dmzx.com/manhua/358/2000089062.html', 'title': '第360话', 'target': '_blank'}
全职猎人 (第360话) (18页)

这是我的三次输出。 我使用a.text 输出的时候不是

我想调用类似 a.innerText直接获取到innerText 也就是"(18页)",但是没有这个方法。

我暂时转成字符串然后处理对应的字符串了。。。。

我想知道对于这些python库我有什么办法测试他有什么对应的js中的方法。

我试了下dir(a) 获取到了方法,和text有关的都试了一次页发现不行。。。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

荒芜了季节 2022-09-14 03:39:40

如果你有jquery基础的话用pyquery库吧

与之呼应 2022-09-14 03:39:40

据我了解, css selector是无法直接获得末尾text的.
另外将您的代码简化一些.

我能想到的代码是(获取全部a):

r=session.get('http://www.dmzx.com/manhua/358/')
a_ls=r.html.find('div.subsrbelist.center > ul > li > a')  

data=[]

for a in a_ls:
    chapter=' '.join(a.text.split(' ')[:-1])
    pages=a.text.split(' ')[-1]
    link=a.attrs['href']
    data.append({'chapter':chapter, 'pages':pages, 'link':link})

print(data)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文