从列表中提取字符串

时间:2014-06-13 13:06:23

标签: python beautifulsoup

我编写了一些代码,可以从谷歌搜索中检索一条信息,但它会在列表中将数据返回给我。我需要将列表中的每个项目存储在一个单独的变量中。如果你看下面的输出,我需要的是单引号内的每个部分都存储在它自己的变量中。有人可以帮忙吗?

代码如下:

import urllib
import mechanize
from bs4 import BeautifulSoup
import requests
import re


br = mechanize.Browser()
br.set_handle_robots(False)
br.addHeaders = [('User-agent', 'chrome')]

term = "vz"
url = "http://www.google.com/search?q=nyse%3A"+term
soup = BeautifulSoup(requests.get(url).text)
search = soup.find('div', attrs = {'class':'e'})
searchtext = str(search)
soup1 = BeautifulSoup(searchtext)
search2 = soup1.find('div', attrs = {'style':'margin-top:5px'})
searchtext2 = str(search2)
soup2 = BeautifulSoup(searchtext2)
soup2 = soup2.span
data = soup2.findAll(text=True)
var1, var2, var3, var4 = data 

有了这个,如果你调用四个变量中的任何一个,它会从列表中给你相应的值。

1 个答案:

答案 0 :(得分:0)

如果您想将它们全部存储在单独的python变量中,您可以尝试:

data = soup2.findAll(text=True) #mind the not casting it to a string
(var1, var2, var3, var4) = data

并且您在变量var1,var2,var3和var4中拥有所有数据。这只有在您预先知道阵列大小的情况下才有效。