Как веб царапать MLB ватин для того, чтобы преуспеть?

голоса
0

Я выскабливание бейсбольных составов команд и импортировать код питона в Excel с помощью панд.

То, что я ищу:

  1. Удалить кавычки из названий
  2. Удалить скобки от начала и конца каждой команды
  3. Сплит имен в разные ячейки

Пример выходного тока для команды 1:

['Daniel Norris', 'Masahiro Tanaka', 'Mikie Mahtook', etc.]

Все вышеперечисленные имена имеют кавычки, запятые и скобки, прикрепленные к ним. Все они перечислены в той же камере, тоже.

Пример предпочтительного выхода первенствовать для команды 1:

Daniel Norris    Masahiro Tanaka    Miki Mahtook    etc.

Как вы можете видеть выше, я хотел бы все кавычки, запятые и скобки удалены. Кроме того, я хотел бы все имена игроков от каждой команды, чтобы быть в своих соответствующих клетках.

Я искал правильный код онлайн. До сих пор я видел три примера на stackoverflow.com, но они выглядят иначе, чем у меня. Я покажу все три. Возможно, один из них может быть использован в данном случае.

Пример 1 с использованием метода строки:

s = s.strip(['o','1'])

Пример 2, используя метод замены:

s = s.replace(World, )

Пример 3 с использованием метода удаления:

x = [1,2,3,4,2,2,3]
def remove_values_from_list(the_list, val):
    for i in range(the_list.count(val)):
        the_list.remove(val)

remove_values_from_list(x, 2)

print(x)

Можно ли реализовать один из этих кодов, чтобы сделать три вещи я перечислил выше? Если нет, то, возможно, кто-то может предложить мне некоторое представление о том, как лучше достичь своих целей. Я видел, что некоторые люди в Интернете предлагают регулярные выражения фильтра. Я не знаю, как использовать те, хотя. Заранее спасибо за ваше время и усилия!

Кстати, я совершенно новый для кодирования и выскабливания. Я очень благодарен за любую помощь, которую я могу получить. Пожалуйста, дайте мне знать, если у вас есть какие-либо вопросы или если я могу добавить больше деталей, чтобы лучше помочь вам.

Вот мой код до сих пор:

from bs4 import BeautifulSoup
import requests
import pandas as pd

url = 'http://www.baseballpress.com/lineups'

soup = BeautifulSoup(requests.get(url).text, 'html.parser')

all_games = []

for g in soup.find_all(class_=game):
    players = g.find_all('a', class_='player-link')
    game = {
        'players': [_.text for _ in g.find_all('a', class_='player-link')],
    }
    all_games.append(game)

print(all_games) 

df = pd.DataFrame.from_dict(all_games)
writer = pd.ExcelWriter('batting lineup.xlsx')
df.to_excel(writer, 'baseball_sheet')
writer.save()
Задан 02/09/2018 в 05:28
источник пользователем
На других языках...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more