2016-06-22 9 views
0

ウェブサイトをcsvファイルにスクラップしているpythonスクリプトがあります。私はそれをmySQLのinsert文に変換しようとしています。以下のコードは、テーブルにNULL値を挿入しています。どのように変更することができますか?CSVスクラップをmySQLに変換する

注:コメントアウトされた行は、動作しているCSVスクレープを削除しています。

#f = codecs.open('results.csv', 'w', encoding='UTF-8') 
d = date.today() 
todays_date = date.strftime(d, '%m/%d/%y') 
#f.write("Date,Time,Away) 
#f.write('\n') 

def scrape_game_info(): 
    all_tbodies = driver.find_elements_by_tag_name('tr') 
parsed_tbodies = [ 
    i for i in all_tbodies if 'ctl00_content_ctl00' in i.get_attribute('id')] 
del parsed_tbodies[0] 
dictionary = OrderedDict(itertools.izip_longest(
    *[iter(parsed_tbodies)] * 2, fillvalue="")) 
for key, value in dictionary.items(): 
    tds = key.find_elements_by_tag_name('td') 
    date = tds[0].text 
    if date == todays_date: 
     away=tds[2].text 
     #f.write(date) 
     #f.write(',') 
     #f.write(time) 
     #f.write(',') 
     #f.write(away_rotation_number) 
     #f.write(',') 
pgp=("INSERT INTO pgp (Date, Time, Away)\ 
VALUES (date, time, Away) 
cursor.execute(pgp) 

**これはコードの一部ですが、私は問題の定義に役立つと考えています。

+0

なぜmysqlに直接csvをロードしないのですか? – splash58

+0

私はこのスクリプトを頻繁に実行するので、 –

+1

私はGUIの人々が毎分load data infileを使います。あなたのルーパの事の代わりに。はるかに速く。 – Drew

答えて

0

私は、負荷データinfileを使用するドリューの提案を使用しました。私はcsvを作成するスクリプトを通常どおり実行しました。その後、スクリプトを作成した後にデータをロードするコードを追加しました。