| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- import psycopg2
- # 数据库连接参数
- db_params = {
- 'dbname': 'freshrss',
- 'user': 'freshrss',
- 'password': 'freshrss',
- 'host': 'erhe.top',
- 'port': '20788'
- }
- # SQL 查询语句
- query = 'SELECT id, url FROM freshrss_toor_feed;'
- try:
- # 建立数据库连接
- conn = psycopg2.connect(**db_params)
- # 创建 cursor 对象
- cur = conn.cursor()
- # 执行 SQL 查询
- cur.execute(query)
- # 获取查询结果
- records = cur.fetchall()
- # 遍历查询结果
- for record in records:
- id, url = record
- # 替换 rsshub.app 为 rsshub.erhe.top
- if 'rsshub.app' in url:
- url = url.replace('rsshub.app', 'rsshub.erhe.top')
- # 如果不包含 #force_feed,则在末尾加上
- if '#force_feed' not in url:
- url += '#force_feed'
- # 更新 SQL 语句
- update_query = 'UPDATE freshrss_toor_feed SET url = %s WHERE id = %s;'
- # 执行更新操作
- cur.execute(update_query, (url, id))
- # 提交事务
- conn.commit()
- print("Data updated successfully.")
- except psycopg2.Error as e:
- print(f"Database error: {e}")
- conn.rollback()
- except Exception as e:
- print(f"An error occurred: {e}")
- finally:
- # 关闭 cursor 和连接
- if 'cur' in locals():
- cur.close()
- if 'conn' in locals():
- conn.close()
|