通过 selenium 发出请求,通过请求,由于某种原因,表中的最后两行不在 html 中,显然 js 在那里搞砸了
from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://bonds.finam.ru/issue/details0256500001/default.asp')
html = driver.page_source
driver.quit()
soup = BeautifulSoup(html, 'lxml')
div = soup.find('div', class_='datas')
trs = div.find_all('tr')
for tr in trs:
tds = tr.find_all('td')
print(tds[1].text.strip())
结论:
# ООО "Городской супермаркет"
# Общество с ограниченной ответственностью "Городской супермаркет"
# 7705466989
# http://www.azbukavkusa.ru
# Российская Федерация, 113054, г. Москва, ул. Валовая, д. 8/18
# Российская Федерация, 113054, г. Москва, ул. Валовая, д. 8/18
# (495) 504-3787; 504-3477(факс)
# Торговля
通过 selenium 发出请求,通过请求,由于某种原因,表中的最后两行不在 html 中,显然 js 在那里搞砸了
结论:
事实是他自己
<table></table>
是Python
空的。这就是你可以制作字典的方法,我想你会进一步理解:
这是一个工作版本,js在那里加载