我正在尝试获取网页上图像的URL并使用以下代码:
import httplib2
from BeautifulSoup import BeautifulSoup, SoupStrainer
http = httplib2.Http()
status, response = http.request('URL')
for link in BeautifulSoup(response, parseOnlyThese=SoupStrainer('img')):
if "visibility:hidden" not in link:
print "IMAGE PATH: "+link['src']
我想过滤到不可见图像的链接,比如:
^{pr2}$但是我不能过滤“link”变量。如果总是通过。在
链接变量是什么类型的?串?我能把它转换成字符串类型吗? 请问我该怎么做? 非常感谢。在
编辑: 谢谢梁先生 我试着用你给出的构造器: 美丽之声(回应,'html.parser',parse only=SoupStrainer('img') 但这对我来说失败了: 回溯(最近一次呼叫): 文件“getLinksFromPage3.py”,第10行,输入 在beauthulsoup中的链接(响应,'html.parser',parse_only=SoupStrainer('img')): 文件“/usr/lib/python2.7/dist-packages/美化组.py“,第1522行,ininit BeautifulStoneSoup.init(self,*args,**kwargs) TypeError:init()获取了意外的关键字参数“parse\only”
谢谢梁先生。 我也不得不换成bs4。在
使用
tag.attrs
首先获取标签上的属性,然后过滤属性。下面的代码可以工作。在另外,你应该定义哪个解析器适合这种情况,这样会得到更好的结果。在
相关问题 更多 >
编程相关推荐