Python 查找img和id标记,如果两者都为真,则将URL存储在变量中

Python 查找img和id标记,如果两者都为真,则将URL存储在变量中,python,html,urllib2,Python,Html,Urllib2,我现在一直在玩一些Python,并开始掌握它。 我已经想出了一个计划,但有些事情我做不出来 目的是查看已定义标记的内部,如img标记或a标记。 如果这是真的,它还需要寻找一个id标签,总是相同的 如果img take看起来像,我希望将其存储 如果img take看起来像,我不希望存储它 希望这是相当容易实现的,我只是还没有找到一个解决方案。我已经查找了HTMLPasser的函数,但对我来说,它更像是胡言乱语而不是意义。希望有人知道如何做到这一点,并帮助我。非常感谢 干杯, ninjaboi21.

我现在一直在玩一些Python,并开始掌握它。
我已经想出了一个计划,但有些事情我做不出来

目的是查看已定义标记的内部,如img标记或a标记。
如果这是真的,它还需要寻找一个id标签,总是相同的

如果img take看起来像
,我希望将其存储
如果img take看起来像
,我不希望存储它

希望这是相当容易实现的,我只是还没有找到一个解决方案。我已经查找了HTMLPasser的函数,但对我来说,它更像是胡言乱语而不是意义。希望有人知道如何做到这一点,并帮助我。非常感谢

干杯,

ninjaboi21.

人们通常使用BeautifulSoup来做这类事情

安装后:

from BeautifulSoup import BeautifulSoup
# if the file is on your computer use this
#file = open('/path/to/the/file')
# and if the file is on the internet use this
#import urllib
#file = urllib.urlopen('http://www.the.com/path/to/the/file')
html = file.read()
file.close()
soup = BeautifulSoup(html)
trueimages = [image for image in soup.findAll('img') if image['id'].lower() == 'true']

编辑:添加了如何将文件放入字符串。

该网站对python@Marty的一些不同解析器进行了很好的比较,这只是一个速度和内存比较,它没有比较功能或易用性。这似乎与他的问题无关。他们基本上都做同一件事,而且都能做他的问题所要求的事情。这也是为什么我的回答是评论而不是回答。@ninjaboi我注意到你对大多数问题都没有接受任何答案。如果有人对你有帮助,请记住接受答案。哦,我甚至没有意识到这一点,我觉得投赞成票就足够了。我现在已经用记号标记了最佳答案。感谢您提供的代码,但是有一个错误-NameError:“name'html'未定义”-我如何修复它?
html
是我用于存储html文档的字符串的名称。因此,如果文件在您的计算机上,则需要使用
file=open('/path/to/the/file')
file=urllib.urlopen('http://www.the.com/path/to/the/file)
如果它在internet上,则使用
html=file.read()
将其读入字符串。