我有来自BeautifulSoup的汤,我有一个键列表(key_image),我想在另一个列表中引入值。
soup = BeautifulSoup(stringapplet)
key_image = ['archivo=', 'imagen=', 'image=', 'imaxe=', 'arquivo=']
imageslist = []
这样我就可以得到 archivo 的值列表:
patron = re.compile(r"archivo='([\w\./]+)'")
for tag in soup.findAll('param'):
if patron.search(tag['value']):
imageslist.append(patron.search(tag['value']).group(1))
很好,但是......我需要在 imageslist 中搜索“patrons”,如 archivo : imagen , imaxe ...等等,所以我想我需要在搜索模式中引入一个变量,然后我这样做:
for x in key_image:
if string.find(stringapplet, x) != -1:
expression = 'r' + '"' + x + "'" + '([\w\./]+)' + "'" + '"'
patron = re.compile(expression)
for tag in soup.findAll('param'):
if patron.search(tag['value']):
imageslist.append(patron.search(tag['value']).group(1))
但 imageslist 为空,因为永远不会加载最后一行。 ¿?
我做 patron.pattern 我得到 r“archivo ='([\ w ./] +)'”也是,所以出了什么问题?
如何搜索所有key_images值的所有值?
感谢。
答案 0 :(得分:1)
for x in key_image:
if string.find(stringapplet, x) != -1:
expression = r"%s'([\w\./]+)'" % x
patron = re.compile(expression)
for tag in soup.findAll('param'):
result = patron.search(tag['value'])
if result:
imageslist.append(result.group(1))