WX_GUA_JIAN_PARSE.js 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. const CMD = {}
  2. const time_count = 2000;
  3. const redis_help = require('../src/use_redis');
  4. const origin_data_controllers = require('../src/data_manager/Controllers/origin_data_controllers');
  5. const helper = require('../src/helper');
  6. async function processTask(){
  7. try{
  8. let FilterConfig = await redis_help.getKeyValue("FilterConfig")
  9. FilterConfig = JSON.parse(FilterConfig)
  10. let meaningless_Ids = []
  11. const result = await origin_data_controllers.getOriginDataByStatusAndLimit({status:3},500)
  12. if(result.success){
  13. let origin_data_list = result.data
  14. if(origin_data_list.length<=0){
  15. throw "no data!"
  16. }
  17. for (let index = 0; index < origin_data_list.length; index++) {
  18. const element = origin_data_list[index];
  19. if(helper.checkChannel(element.guajian_link,'title=%')){
  20. let d = await require('./parse_wx_guajian').fetchData(element.guajian_link)
  21. // console.log("d:",d)
  22. if(d!=null){
  23. let guajian_link = `wx_gua_jian=1$${d.wechat_microapp_jump_url}&name=${d.wechat_microapp_title}`
  24. if(helper.checkChannel(guajian_link,'-smls-')){
  25. meaningless_Ids.push(element.id)
  26. }else{
  27. await origin_data_controllers.updateOriginData({id:element.id},{status:0,guajian_link:guajian_link})
  28. }
  29. }else{
  30. // console.log("element:",element.id)
  31. meaningless_Ids.push(element.id)
  32. }
  33. await new Promise(resolve => setTimeout(resolve, 500));
  34. }else{
  35. meaningless_Ids.push(element.id)
  36. }
  37. }
  38. // console.log("meaningless_Ids:",meaningless_Ids)
  39. if(meaningless_Ids.length>0){
  40. // console.log("meaningless_Ids:",meaningless_Ids)
  41. let update_result = await origin_data_controllers.updateOriginDataByIds({ids:meaningless_Ids},{status:4})
  42. if(update_result.success){
  43. console.log(update_result.message)
  44. }
  45. }
  46. }
  47. }catch(e){
  48. console.log("筛选数据错误:",e)
  49. } finally{
  50. global.setTimeout(processTask,time_count)
  51. }
  52. }
  53. CMD.init = function(){
  54. redis_help.connect(()=>{
  55. })
  56. processTask()
  57. }
  58. CMD.init()