我正在努力想办法利用pandas把我收集的数据转换成一个数据帧
我从一个杂货店网站上搜集数据作为实验。使用Beautiful soup,一旦我导入URL并使用Beautiful soup,我就创建了一个循环,用div标记拉取某个类中的任何内容。然后我使用下面的代码来提取下面的数据:
import urllib2
import requests
import pandas as pd
from bs4 import BeautifulSoup
import pickle
link=requests.get("https://www.iga.net/en/online_grocery/frozen_grocery")
soup = BeautifulSoup(link.content, 'html.parser')
##print soup.prettify()
bowl=soup.find_all('div',class_='js-product js-equalized js-addtolist-container js-ga')
for bowls in bowl:
list=bowls.get('data-product')
print list
打印列表:
^{pr2}$我试图以productID、size和regular price为例,将其转储到一个表中。我甚至可以将整个键和值转储到一个数据框中,这样我就可以在excel中处理它了。在
我尝试执行以下操作,但出现错误(添加到最后一个块的数据帧中:
import urllib2
import requests
import pandas as pd
from bs4 import BeautifulSoup
import pickle
link=requests.get("https://www.iga.net/en/online_grocery/frozen_grocery")
soup = BeautifulSoup(link.content, 'html.parser')
##print soup.prettify()
bowl=soup.find_all('div',class_='js-product js-equalized js-addtolist-container js-ga')
for bowls in bowl:
list=bowls.get('data-product')
df = pd.DataFrame(list)
print df
这会导致错误。感谢任何帮助。我是新手。在
您需要将每个
data-product
转换为一个有效的python字典,然后将所有这些字典合并到一个字典中,然后您可以像这样转换为dataframe:输出将是您想要的数据帧:
更新:
如果要查看excel文件中的数据框,可以用以下代码写入excel文件:
^{pr2}$然后您可以打开文件
pandas_simple.xlsx
,以检查excel格式的数据。在相关问题 更多 >
编程相关推荐