So I've made a personal web server to scrape some sites and display the data on a web page. But when I try to commit the results to the database I got a warning for each Video that I commit. I'd like to know if this warning can be fixed or at least hidden ?
Here's my code:
from web_scraper import db
from web_scraper.models import Video
old_db = Video.query.all() # existing database to compare with the new one
db_queue = list() # scraping results ready to be added to the database
### web scraping occurs here to fill db_queue
db.drop_all() # reset db
db.create_all() # recreate a new one
for vid in db_queue:
db.session.add(vid) # adding all pending results
db.session.commit() # error thrown here
And here's the complete warning output:
C:\DevApps\Python38\lib\site-packages\sqlalchemy\orm\session.py:1948: SAWarning: Identity map already had
an identity for (<class 'web_scraper.models.Video'>, (2133,), None), replacing it with newly flushed object.
Are there load operations occurring inside of an event handler within the flush?