Файл sqlite3.DatabaseError не является базой данных - PullRequest
0 голосов
/ 24 ноября 2018

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

(sqlite3.DatabaseError) файл не является базой данных [SQL: 'PRAGMA table_info ("user_timeline")'] (Справочная информация об этой ошибке: http://sqlalche.me/e/4xp6)

class Scrape:
    def __init__(self):    
        engine = sqlalchemy.create_engine("sqlite:///C:/Users/Mubarak/Downloads/my machine leaarning kit/twittermda.sqlite.sqbpro", echo=False)  # YOUR DATABASE NAME HERE
        Session = sessionmaker(bind=engine)
        self.session = Session()  
        Base.metadata.create_all(engine)

    def main(self):

        all_ids = self.session.query(ACCOUNT).all()

        print ('len(all_ids)', len(all_ids))


        #CHECK IF THE 'ACCOUNTS' TABLE HAS BEEN POPULATED; IF NOT, ADD DATA FROM 
        #CSV FILE TO THE TABLE
        if len(all_ids) < 1:
            conn = sqlite3.connect('test.sqlite')
            import pandas as pd
            df = pd.read_csv('C:/Users/Mubarak/Downloads/my machine leaarning kit/newaccounts.csv')
            df.to_sql('accounts', conn, if_exists='append', index=False)
            all_ids = self.session.query(ACCOUNT).all()

        keys = []
        for i in all_ids: 
            Unique_ID = i.Unique_ID
            Twitter_handle = i.Twitter_handle
            kid = Twitter_handle                
            rowid = i.Unique_ID
            print ('\n', "\rprocessing id %s/%s  --  %s" % (rowid, len(all_ids), Twitter_handle))
            sys.stdout.flush()


            page = 1
            while page < 17: #TO DOWNLOAD FEWER PAGES OF TWEETS, MODIFY THIS PLUS LINE 621
                print ("------XXXXXX------ STARTING PAGE"), page
                d = get_data_user_timeline_all_pages(kid, page)         
                if not d:
                    print ("THERE WERE NO STATUSES RETURNED........MOVING TO NEXT ID")
                    break        
                if len(d)==0:
                    print ("THERE WERE NO STATUSES RETURNED........MOVING TO NEXT ID")
                    break

                write_data(self, d, Twitter_handle, Unique_ID)


                #self.session.commit()

                #print 'pausing for 1 second'
                #time.sleep(1) #PAUSE FOR 1 SECOND

                page += 1
                if page > 16:
                    print ("WE'RE AT THE END OF PAGE 16!!!!!")
                    break
            self.session.commit()

        print  ('\n', '\n', '\n', "FINISHED WITH ALL IDS")
        self.session.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...