刮维基百科

时间:2018-12-26 05:00:36

标签: python web-scraping wikipedia

我希望取消Wikipedia的表格,但我面临困难。

  1. 在此网站(https://en.wikipedia.org/wiki/List_of_chemical_elements)上,我希望将整个列表导入为数据框。
  2. 在此网站(https://en.wikipedia.org/wiki/Hydrogen)上,我希望在页面右侧导入汇总表数据。

我做这些的最好方法是什么?预先感谢!

2 个答案:

答案 0 :(得分:0)

我设法找到了第一个问题的答案。谢谢大家。

summary_url = 
requests.get('https://en.wikipedia.org/wiki/List_of_chemical_elements').text
summary_soup = bs(summary_url,'html')
summary_table = summary_soup.find('table',{'class':'wikitable sortable collapsible'})

array = []

rows = summary_table.findAll('tr')
header = [col.text for col in rows[1].findAll('th')]

for row in rows[2:-1]:
    tmp_row = []
    for column in row.findAll('td'):
        tmp_row.append(column.text)
    array.append(tmp_row)

df_raw = pd.DataFrame(array, columns=header)

答案 1 :(得分:0)

您可以尝试以下类似的熊猫

>>>import pandas as pd

>>>table = pd.read_html('https://en.wikipedia.org/wiki/List_of_chemical_elements')

>>>table[1]