循环中的选项值

时间:2016-01-03 17:30:17

标签: python beautifulsoup python-requests

我必须先道歉,我自学python,所以非常感谢任何帮助!

from bs4 import BeautifulSoup
import requests

r = requests.get("http://www.transfermarkt.co.uk/queens-park-rangers/startseite/verein/1039/saison_id/2015", headers={
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"
})
soup = BeautifulSoup(r.content,"html.parser")

playVal = soup.find_all("select", attrs={'data-placeholder':'Player(s)'})
print playVal

我会链接到只返回63632 <option value="63632">GGGG<option>所以我可以添加一个循环来形成一个链接

fullLink = 'http://www.test.com/' + playVAL['63632']

我希望这是有道理的

非常感谢

1 个答案:

答案 0 :(得分:1)

您需要遍历已找到的所有select,然后遍历每个option内的所有values = [] for select in playVal: for option in select.find_all('option'): values.append(option.get('value')) print values 以提取值。下面的内容可以帮到你:

values = [option.get('value') for select in playVal for option in select.find_all('option')]

如果你是列表推导的粉丝:

.help-1 img {
    height: 100%;
    margin: 20px 20px 20px 20px;
    box-sizing: border-box;
}