0
私はコーディングが初めてで、これが私の最初のプロジェクトです。これまでのところ、私はグーグル、チュートリアル、スタックを通して私が持っているものをつなぎました。データフレームがMySQLデータベースに追加されない
これまでのところ、RSSからSQLデータベースに取り込んでいるデータを取得することができました。しかし、スクリプトを実行すると、新しいデータは追加されません。最新のフィードエントリで更新され、以前にあったものは消去されます。
私は関数に追加を追加したので、私が間違って書いたものはわかりません。これは本当に不吉な質問ですが、私が間違っていることは分かりません。
import pandas as pd
from pandas.io import sql
import feedparser
import time
rawrss = ['http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/front_page/rss.xml',
'https://www.yahoo.com/news/rss/',
'http://www.huffingtonpost.co.uk/feeds/index.xml',
'http://feeds.feedburner.com/TechCrunch/',
]
time = time.strftime('%a %H:%M:%S')
summary = 'text'
posts = []
for url in rawrss:
feed = feedparser.parse(url)
for post in feed.entries:
posts.append((time, post.title, post.link, summary))
df = pd.DataFrame(posts, columns=['article_time','article_title','article_url', 'article_summary']) # pass data to init
df.set_index(['article_time'], inplace=True)
import pymysql
from sqlalchemy import create_engine
engine = create_engine('mysql+pymysql://<username>:<password>@<hostname>:<port>/<dbname>?charset=utf8', encoding = 'utf-8')
engine.execute("DROP TABLE IF EXISTS rsstracker")
engine.execute("""CREATE TABLE rsstracker(article_time varchar(255),
article_title varchar(255),
article_url varchar(1000),
article_summary varchar(1000))""")
df.to_sql(con=engine, name='rsstracker', if_exists='append', flavor='mysql')
この 'engine.execute(「DROP TABLE IFはrsstrackerをEXISTS」)私は、新しいデータが – RiggsFolly
をappend_ていないスクリプトを実行すると_Howeverが、これはテーブルを削除し、再度、毎回私を開始しない理由'説明できますスクリプトを実行しますか? –