File "C:/Python36/Projects/NFL/read in.py", line 8, in <module>
table = bs(open('C:\page.html','r').read()).find('table')
TypeError: 'module' object is not callable
当我尝试使用bs4
将保存的.html页面加载回脚本时,收到上述错误。无论文件是在scripts文件夹中还是在scripts文件夹之外,都会发生,因此为了方便起见,我将其移至C驱动器。
import bs4 as bs
import pandas as pd
import os
table = bs(open('C:\page.html','r').read()).find('table')
dfs = pd.read_html(table)
for df in dfs:
print(dfs)
df.to_csv('ALL_Ref_AtBats.csv', mode='a')
答案 0 :(得分:2)
我认为您需要像这样导入BeautifulSoup。
from bs4 import BeautifulSoup as bs
答案 1 :(得分:1)
问题是您正在文件路径字符串中使用转义序列...
您将文件路径定义为'C:\page.html'
。这里,\p
之后的C:
具有特殊含义,就像\n
表示换行符(不仅仅是\n
)一样。
您可以通过提供文件路径为'C:\\page.html'
或r'C:\page.html'
或'C:/page.html'
来解决此问题。
提示: r'...'
返回没有任何转义序列的字符串。