Skip to content
Advertisement

Web Scraping ESPN Data With Selenium

I’m trying to scrape some data off ESPN and run some calculations off the scraped data. Ideally, I will like to iterate through a dataframe, grab the players name with Selenium, send the player’s name into the search box and tell Selenium to click the player’s name. I was able to do this successfully with one player. I’m not quite sure how to iterate through all the players in my data frame.

The second part of the code is where I’m struggling. For some reason I am not able to get the data. Selenium isn’t able to find any of the elements. I don’t think I’m doing it properly. If I am able to scrape the required data, I will like to plug them into a calculation and append the calculated projected points into my dataframe, dfNBA.

Can someone please help me with my code? and point me in the right direction. I’m trying to be more efficient writing python codes but right now I’m stuck

Thanks

JavaScript

Advertisement

Answer

I think Selenium is a bit overkill when there’s a viable api option.

Give this a try. Note, that in the overview, the L10 games refers to last 10 regular season games. My code here does the last 10 games which include playoffs. If you only want regular season, let me know, and I can adjust it. I also added a variable here so if you wanted for example, just last 5 games, or last 15 games, etc. you could do that too.

JavaScript

Output:

JavaScript
User contributions licensed under: CC BY-SA
8 People found this is helpful
Advertisement