这是一个特定于上下文的问题,关于如何使用BeautifulSoup解析python2.7中的html表。
我想提取html表here并将其放在tab-delim csv中,并尝试使用BeautifulSoup。
上下文代码:
proxies = {
"http://": "198.204.231.235:3128",
}
site = "http://sloanconsortium.org/onlineprogram_listing?page=11&Institution=&field_op_delevery_mode_value_many_to_one[0]=100%25%20online"
r = requests.get(site, proxies=proxies)
print 'r: ', r
html_source = r.text
print 'src: ', html_source
soup = BeautifulSoup(html_source)
为什么这段代码不能获得第4行?
soup.find('table','views-table cols-6').tr[4]
如何打印出第一行(不是标题行)中的所有元素?
答案 0 :(得分:2)
table = soup.find('table', class_='views-table cols-6')
for row in table.find_all('tr'):
row_text = list()
for item in row.find_all('td'):
text = item.text.strip()
row_text.append(text.encode('utf8'))
print row_text
我相信你的tr [4]被认为是属性,而不是你想象的索引。