我正在尝试从网页中抓取数据,该网页具有当前已登录该网站的用户表
我正在使用以下代码登录网站
browser = RoboBrowser()
loginURL = 'https://geico.aisreview.com/ais/admin.aspx'
browser.open(loginURL)
form = browser.get_form(id='form1')
form['txtPWD'].value = 'myPassword'
browser.submit_form(form)
我正在使用此代码尝试从表中提取数据。现在,我只是想出于测试目的而打印
soup = BeautifulSoup(loginURL)
table = soup.find_all("table", {"class": "rgMasterTable"})
for myTable in table:
table_body = myTable.find('tbody')
try:
rows = table_body.find_all('tr')
for tr in rows:
cols = tr.find_all('td')
for td in cols:
print td.text
except:
print "no tbody found"
运行代码时,我没有任何错误,但没有任何输出。我能够确定永远不会输入for循环,但是我不知道为什么。
答案 0 :(得分:1)
您可以使用pandas.read_html从html读取表
import pandas as pd
import requests
loginURL='http://example.com'
res=requests.get(loginURL)
tables=pd.read_html(res.text) # return list of tables
print(tables)#will display all the tables, please slice the list for your required table.
或者您可以直接提供pd.read_html(loginURL)
这样的网址