我有一个名为'MLB_names.xlsx'的Excel文件。在此文件中,我有一个名为“主页”的工作表,其中包含我要保留的公式。 (第1页)
我正在尝试将两个Web剪贴簿添加到此excel文件。我想将第一个Web剪贴簿(MLB面糊)打印到名为“ batters”的新纸上。 (第2页)
我希望将第二个刮板(MLB投手)打印到名为“ pitchers”的新纸上。 (第3页)
我将在下面提供有关该项目的更多信息...
表1):“首页”
这是我已经保存的工作表。如果可能的话,我想保留此表中的公式。
表2):“击球员”
我已经刮除了2018年美国职业棒球大联盟击球手的所有姓名和年龄。
这是我第一次成功刮擦的代码:
#import modules
from urllib.request import urlopen
from lxml.html import fromstring
import pandas as pd
#fetch batting url
url = "https://www.baseball-reference.com/leagues/MLB/2018-standard-batting.shtml"
#remove HTML Markup
content = str(urlopen(url).read())
comment = content.replace("-->","").replace("<!--","")
tree = fromstring(comment)
#create column titles
columns = ("names", "age")
df = pd.DataFrame(columns=columns)
#parse HTML
for idx, pitcher_row in enumerate(tree.xpath('//table[contains(@class,"stats_table")]//tr[contains(@class,"full_table")]')):
names = pitcher_row.xpath('.//td[@data-stat="player"]/a')[0].text
age = pitcher_row.xpath('.//td[@data-stat="age"]/text()')[0]
#create dataframe
df.loc[idx] = (names, age)
#print data
writer = pd.ExcelWriter('MLB_names.xlsx')
df.to_excel(writer, 'Sheet1')
writer.save()
第3页):“投手”
现在是我第二次抓拍...基本上是相同的编码,但现在是投手:
#import modules
from urllib.request import urlopen
from lxml.html import fromstring
import pandas as pd
#fetch pitching url
url = "https://www.baseball-reference.com/leagues/MLB/2018-standard-pitching.shtml"
#remove HTML Markup
content = str(urlopen(url).read())
comment = content.replace("-->","").replace("<!--","")
tree = fromstring(comment)
#create column titles
columns = ("names", "age")
df = pd.DataFrame(columns=columns)
#parse HTML
for idx, pitcher_row in enumerate(tree.xpath('//table[contains(@class,"stats_table")]//tr[contains(@class,"full_table")]')):
names = pitcher_row.xpath('.//td[@data-stat="player"]/a')[0].text
age = pitcher_row.xpath('.//td[@data-stat="age"]/text()')[0]
#create dataframe
df.loc[idx] = (names, age)
#print data
writer = pd.ExcelWriter('MLB_names.xlsx')
df.to_excel(writer, 'Sheet2')
writer.save()
只是重申我在寻找什么...
1)使用公式维护“主页”表。
不确定是否要在此步骤中使用以下代码:
import pandas as pd
from pandas import read_excel
my_sheet_name = 'Home'
df = read_excel('MLB_names.xlsx', sheet_name = 'Home')
2)启动刮擦1和刮擦2
这部分已经完成。不过,我可以使用帮助来创建2个单独的数据框,因此我可以完成下一步。
3)使用熊猫打印到excel
第1页)“首页” 与公式保持一致
第2页)“击球员”
第3页)“投手”