python用select 找到需要标签后,无法使用.get_text()
Select 会返回一个列表, 列表中元素为tag对象. 而get_text() 只能用于tag对象.
所以如果你想用get_text()的话, 只能把列表中元素取出来.如:for i in a: print(i.get_text())如果列表中只有一个元素的话, 那么可以这样做:a.get_text()当然也可以用bs4中的select_one()方法, 和上面的是等价的, 不过更安全一点:a =soup.select_one(\u0026#39;#article-content \u0026gt; div.content \u0026gt; div.TRS_Editor \u0026gt; p:nth-of-type(2)\u0026#39;)a=a.get_text()与之对应的还有:find() # 返回find_all中的第一个元素find_all() # 返回一个列表至于为什么说这些方法比select()安全, 主要还是IndexError的问题, 当你的解析式写错的时候, select()会返回一个空列表, 任何索引都会引起IndexError, 但是当我们使用select_one的时候, 它只会返回None.
■网友
这样的
【python用select 找到需要标签后,无法使用.get_text()】
推荐阅读
- 怎样成为一名合格的Python程序员?
- python 爬虫,咋获得输入验证码之后的搜索结果
- 非计算机专业想要利用课余时间深入自学C++,想要找到比较体面的工作大概需要啥水平
- python的html5lib这个库咋使用啊我在网上也没有找到相关文档
- 零基础入门学习啥语言好
- Python3.4和3.5区别大么
- python 中 def_():...... return _有啥作用
- 新互联网网站用Java还靠谱么对比Php,Python,Ruby的话
- 30岁男,创业失败转行学python,是否很晚?也不好找工作?
- Python 的开发速度比 C#.net 或 Vb.net 更快吗?
