| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- # 插入文章数据
- async def save_article_to_recycle_pool(
- pool,
- log_client,
- info_tuple: tuple,
- content_url: str,
- account_info: dict,
- table_name: str = "official_articles_v2",
- ):
- """插入文章,冲突则更新"""
- query = f"""
- INSERT INTO {table_name}
- (ghId, accountName, appMsgId, title, Type, createTime, updateTime, Digest,
- ItemIndex, ContentUrl, SourceUrl, CoverImgUrl, CoverImgUrl_1_1,
- CoverImgUrl_255_1, ItemShowType, IsOriginal, ShowDesc, ori_content,
- show_view_count, show_like_count, show_zs_count, show_pay_count,
- wx_sn, baseInfo, title_md5, status)
- VALUES
- (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s,
- %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
- ON DUPLICATE KEY UPDATE
- show_view_count = VALUES(show_view_count),
- show_like_count = VALUES(show_like_count);
- """
- try:
- await pool.async_save(
- query=query,
- params=info_tuple,
- db_name="piaoquan_crawler",
- )
- print("insert/update article success")
- except Exception as e:
- await log_client.log(
- contents={
- "function": "save_article_to_recycle_pool",
- "status": "fail",
- "message": "insert/update article failed",
- "data": {
- "error": str(e),
- "content_link": content_url,
- "account_name": account_info["name"],
- },
- }
- )
|