tg_factory_main.js 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376
  1. setInterval(() => {
  2. }, 15000);
  3. const CMD = {}
  4. const ProcessManager = require('./ProcessManager');
  5. const helper = require('./src/helper');
  6. const HttpClient = require('./src/HttpClient');
  7. const redis_help = require('./src/use_redis');
  8. const tools = require('./tools');
  9. const config = require('./etc/config.json')
  10. const hy_search_book = require('./src/api/hy/hy_search_book');
  11. const fq_dj_lib_controllers = require('./src/data_manager/Controllers/fq_dj_lib_controllers');
  12. const axios = require('axios');
  13. const get_fq_book_tab_controllers = require('./src/data_manager/Controllers/get_fq_book_tab_controllers');
  14. function getPlatformInfoByI(PlatformConfig,tg_platform_id){
  15. for (let index = 0; index < PlatformConfig.length; index++) {
  16. const element = PlatformConfig[index];
  17. if(element.tg_platform_id==tg_platform_id){
  18. return element
  19. }
  20. }
  21. return null
  22. }
  23. function getMainInfoById(MainConfig,main_id){
  24. // console.log("MainConfig:",MainConfig)
  25. for (let index = 0; index < MainConfig.length; index++) {
  26. const element = MainConfig[index];
  27. if(element.id==main_id){
  28. return element
  29. }
  30. }
  31. return null
  32. }
  33. CMD.getDjMFList = async function(page_num){
  34. try{
  35. let limit = 1
  36. let timestamp = helper.getCurrentUnixTimestamp()
  37. let cookit = await tools.getDzMfCookit()
  38. console.log("cookit:",cookit)
  39. let client = tools.getOneNewClinet({
  40. "accept": "application/json, text/javascript, */*; q=0.01",
  41. "content-type": "application/json",
  42. "x-requested-with": "XMLHttpRequest",
  43. "cookie": `${cookit}`
  44. })
  45. let response = await client.get(`https://admin.wqxsw.com/admin/referral/book/index?sort=idx&order=desc&offset=${page_num*limit}&limit=${limit}&filter={}&op={}&_=${timestamp}`)
  46. let keys = Object.keys(response.data.rows)
  47. console.log("keys:",keys)
  48. if(keys.length<=0){
  49. throw "没有数据了"
  50. }
  51. let temp = []
  52. for (let index = 0; index < keys.length; index++) {
  53. const key = keys[index];
  54. const element = response.data.rows[key];
  55. temp.push(element)
  56. }
  57. return temp
  58. }catch(e){
  59. console.error("processTask error:",e)
  60. return null
  61. }
  62. }
  63. let isInit = false
  64. // config.isDebug
  65. if(config.isDebug){
  66. redis_help.connect( async (results)=>{
  67. if(results){
  68. if(isInit){
  69. returns
  70. }
  71. isInit = true
  72. // require('./src/api/dz/dz_mf_login').login()
  73. // await new Promise(resolve => setTimeout(resolve,1500))
  74. // let temp = await CMD.getDjMFList(1)
  75. // console.log("temp:",temp)
  76. // let data = await require('./src/api/zy/zy_search_book').search_name("千金小妹要打工")
  77. // console.log("data:",data)
  78. // require('./src/api/dz/dz_login').login()
  79. // let data = await require('./src/api/dz/dz_new_search_book').search_id("11010292075")
  80. // console.log("data:",data)
  81. // let info = await require("./5_CREATE_LINK_FACTORY/fq_create_link").get_tui_jian_start_chapter("7244023180658442807")
  82. // console.log("info:",info)
  83. // let response = await require("./src/api/fq/fq_search_book").new_search_ji_jiang_xia_jia()
  84. // console.log("response:",response)
  85. // let response = helper.resolveDomain("d528.kdltps.com")
  86. // console.log("response:",response)
  87. // let fq_book_result = await fq_dj_lib_controllers.getData({ book_id: "7478240567090315827" });
  88. // if(fq_book_result.success){//如果番茄书库里有这本书
  89. // console.log("fq_book_result:",fq_book_result)
  90. // }
  91. // let fq_book_result = await get_fq_book_tab_controllers.getData({ book_id: "PHY7D13K7Y8" });
  92. // if(fq_book_result.success){
  93. // book_name = JSON.parse(fq_book_result.data.info.info).book_name
  94. // book_id = fq_book_result.data.book_id
  95. // console.log("book_name:",book_name)
  96. // console.log("book_id:",book_id)
  97. // }
  98. // console.log("fuck!")
  99. // let client =new HttpClient()
  100. // let {url,params,headers} = helper.getFqRequestOpt("PI0COXPC5PV","3e0bf79550e1c4b8aa2afc5ae97e8d12")
  101. // let response = await client.fqProxyGet(url, params,headers)
  102. // console.log("response:",response.data)
  103. // let info = await require("./src/api/fq/fq_search_book").search_id("7226276741500469815",config.fanqie_config.distributorId)
  104. // console.log("info:",info)
  105. // let info = await require("./5_CREATE_LINK_FACTORY/fq_create_link").get_tui_jian_start_chapter("7477415199494930994")
  106. // console.log("info:",info)
  107. // let fq_book_result = await get_fq_book_tab_controllers.getData({ book_id: "PHY50JTDD1L" });
  108. // console.log("book_id:",fq_book_result.data.book_id)
  109. // console.log("book_name:",JSON.parse(fq_book_result.data.info.info).book_name)
  110. // let yw_login = await require('./src/api/yw/yw_login').get_captcha()
  111. // let zh_book_data = await require('./src/api/zh/zh_search_book').search_id("1864355654438887424")
  112. // console.log("zh_book_data:",zh_book_data)
  113. // await redis_help.setKeyValue("OPENSESSID","9077ffcc5ca974e2c0e78502a24c9053")
  114. // await require('./src/api/yw/get_book_tg_chapter_id').get_book_tg_chapter_id("20879682908817006")
  115. // await redis_help.setKeyValue("OPENSESSID","ada39ae2c1286d1be3bd32e300951fff")
  116. // await require('./src/api/yw/getActiveInfo').getActiveInfo()
  117. // let MainConfig = await redis_help.getKeyValue("MainConfig")
  118. // MainConfig = JSON.parse(MainConfig)
  119. // let PlatformConfig = await redis_help.getKeyValue("PlatformConfig")
  120. // PlatformConfig = JSON.parse(PlatformConfig)
  121. // let PlatformInfo = getPlatformInfoByI(PlatformConfig,config.platform_yuewen)
  122. // let main_info = getMainInfoById(MainConfig,178) //180
  123. // let data = {
  124. // product_id:"27524924504527406",
  125. // product_name:"为爱冲锋的勇士"
  126. // }
  127. // // console.log("PlatformInfo:",PlatformInfo)
  128. // // console.log("main_info:",main_info)
  129. // await require("./5_CREATE_LINK_FACTORY/yw_create_link").runTask(data,main_info,PlatformInfo,()=>{
  130. // })
  131. // let {promotion_name} = await require("./5_CREATE_LINK_FACTORY/qm_create_link").runTask(data,main_info,PlatformInfo,()=>{
  132. // })
  133. // console.log("promotion_name:",promotion_name)
  134. // let res = await require('./src/api/dz/dz_new_search_book').search_id("11010292075")
  135. // console.log("res:",res)
  136. // let response = helper.resolveDomain("sdksaleapi.hubeidehuic.com")
  137. // console.log("response:",response)
  138. // try {
  139. // const response = await makeRequest('PHWYF50CPI3');
  140. // console.log("response:",response)
  141. // } catch (error) {
  142. // console.error('Error in main execution:', error);
  143. // }
  144. // main()
  145. // let hy_book_data = await require('./2_PRODUCT_FACTORY/collect_hy_book').runTask({book_id:"1869900926728654850"})
  146. // console.log("hy_book_data:",hy_book_data)
  147. }
  148. })
  149. }else{
  150. redis_help.connect( async (results)=>{
  151. let MainConfig = await redis_help.getKeyValue("MainConfig")
  152. MainConfig = JSON.parse(MainConfig)
  153. let list = getMainInfoByAppid(MainConfig,"tt3737418aa80afe8501")
  154. for (let index = 0; index < list.length; index++) {
  155. const element = list[index];
  156. console.log("el:",element.id)
  157. }
  158. })
  159. }
  160. function getMainInfoByAppid(MainConfig,app_id){
  161. let list = []
  162. for (let index = 0; index < MainConfig.length; index++) {
  163. const element = MainConfig[index];
  164. if(element.app_id==app_id){
  165. list.push(element)
  166. }
  167. }
  168. return list
  169. }
  170. // async function makeRequest(key = '') {
  171. // const url = `https://sdksaleapi.hubeidehuic.com/open_sdk/reader/directory/list/v1?novelsale_aid=40017686&novelsdk_aid=638505&novelsdk_version_code=230&novelsdk_device_type=V2049A&promotion_code=${key}&novelsdk_device_platform=android&version_code=290400&device_type=V2049A&sale_app_id=40017686&book_id&force_no_user_id=true&novelsdk_app_name=undefined&app_name=aweme&device_brand=vivo&device_platform=android&aid=1128&mini_app_version=2.3.0&iid=2936130190182979&device_id=825067091580075&ac=wifi&channel=douyin-huidu-gw-huidu-2940&version_name=29.4.0&os=android&ssmix=a&language=zh&os_api=31&os_version=12&manifest_version_code=290400&resolution=1080*2193&dpi=480&update_version_code=29400100&_rticket=1735289341306&first_launch_timestamp=1733382087&last_deeplink_update_version_code=0&cpu_support64=true&host_abi=arm64-v8a&is_guest_mode=0&app_type=normal&minor_status=0&appTheme=light&is_preinstall=0&need_personal_recommend=1&is_android_pad=0&is_android_fold=0&ts=1735289340&cdid=623fd2d5-5680-4aa4-95e8-78378a2ac7c5`;
  172. // const headers = {
  173. // 'Connection': 'keep-alive',
  174. // 'Cookie': 'sid_tt=85486acb04e1918afbee91a9466a9fdc;ssid_ucp_v1=1.0.0-KDVhZTIzM2QyOGFlMGE1MWRhMGIzNmI1MzFmZjlmMTVlODhjYmJiOTkKFQjr19Cz7syDAxC9zrm7Bhip_CY4CBoCbGYiIDg1NDg2YWNiMDRlMTkxOGFmYmVlOTFhOTQ2NmE5ZmRj;is_staff_user=false;sid_ucp_v1=1.0.0-KDVhZTIzM2QyOGFlMGE1MWRhMGIzNmI1MzFmZjlmMTVlODhjYmJiOTkKFQjr19Cz7syDAxC9zrm7Bhip_CY4CBoCbGYiIDg1NDg2YWNiMDRlMTkxOGFmYmVlOTFhOTQ2NmE5ZmRj;sessionid=85486acb04e1918afbee91a9466a9fdc;sessionid_ss=85486acb04e1918afbee91a9466a9fdc;uid_tt=88e8f06afa51aef4fac18f5d77607921;sid_guard=85486acb04e1918afbee91a9466a9fdc%7C1735288637%7C5184000%7CTue%2C+25-Feb-2025+08%3A37%3A17+GMT;passport_csrf_token=08c2b9062233b43ce0e2dd24171203b1;odin_tt=9783bbcf8f09663820810574a01f08b307b6e74c90aa3d8a3b4a80faa9a7d4b197d7e807043c111dcbabde8551e1111145cc87c65fce067f3c532bd796b3681a;uid_tt_ss=88e8f06afa51aef4fac18f5d77607921;passport_csrf_token_default=08c2b9062233b43ce0e2dd24171203b1;store-region=cn-gd;store-region-src=uid;n_mh=9-mIeuD4wZnlYrrOvfzG3MuT6aQmCUtmr8FxV8Kl8xY',
  175. // 'User-Agent': 'Mozilla/5.0 (Linux; Android 12; V2049A Build/SP1A.210812.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/120.0.6099.193 Mobile Safari/537.36 aweme/29.4.0 ToutiaoMicroApp/3.21.0 PluginVersion/29409006',
  176. // 'bdp-sec-uid': 'MS4wLjABAAAA1M_29BGiEjsgNHMP-bmblk-9qGkx5vN7Y3HgltXiFghmy1mfPlH3eonnTWpXANjE',
  177. // 'bdp-did': '825067091580075',
  178. // 'bdp-channel': 'douyin-huidu-gw-huidu-2940',
  179. // 'bdp-device-timezone-offset': '28800',
  180. // 'bdp-os-version': '12',
  181. // 'bdp-os-name': 'Android',
  182. // 'bdp-uid': '1788263942327546',
  183. // 'bdp-version-code': '290400',
  184. // 'bdp-device-platform': 'Android',
  185. // 'bdp-aid': '1128',
  186. // 'bdp-device-manufacturer': 'vivo',
  187. // 'bdp-app-id': 'tt26e45059b9d1239401',
  188. // 'bdp-device-model': 'V2049A',
  189. // 'Content-Type': 'application/json',
  190. // 'activity_now_client': '0',
  191. // 'x-bd-kmsv': '1',
  192. // 'x-tt-request-tag': 's=-1;p=1',
  193. // 'x-tt-trace-id': '00-074e072b0d2ee64e6e8d4abbf55d0468-074e072b0d2ee64e-01',
  194. // 'X-Argus': '/WluZw==',
  195. // 'X-Gorgon': '8404f06a00014b0d761b864b2932a41f362b9276f3488e7700de',
  196. // 'X-Helios': 'AkKvNQvLH57rNKMEdZDNQPlc89Q1Zrs974uhRy+IDcTR/y8Z',
  197. // 'X-Khronos': '1735289341',
  198. // 'X-Ladon': 'Z25p/Q==',
  199. // 'X-Medusa': '/mluZwqBMZ0qvrJcK0OmF6qmD3/QqgABDTUpyT1IA9+MOFfCQlYXoNnb+C/rkhLwH0AzGIam8DGpfzu3MFDs3fD3Jx12yo1AKxmV8ar5cQEJ+yz2srKfjMWVZhnlSHsA8UOdYdeclol6hoyOKCcvD9k+84icb0lW39sUS4b+3c/ZdQ2g/VnINn0Bpn+V99xK211ut9hvj+pP6zAVmrqx+c86fuUyOPwBgmLtJdoya9Z5ChWFBUpxgDZiurbYqGWHG1vDjIJSnKdKLRBhRNCmsvXf7lPifdINI8I3UOlRrZJW4m/sbQ46JlozT8Dza62mFCUJaMXSVXxrPdVxq9C06cZiwamtMQw6cnQZxcI0B2R2i65Ct45ohgrJE2g4z+nZRVrpBO9ApgIXQ/sp6jPKfbkSXHFzykdk75Ktwz67Vji7puQOOUUlyeMkaBGvEaq9EZnwOyJ3VxggUaqaH5CtKfYD7lnAM4TbjtLE3SMfZZNviajoNh7ouLeyNLUab/Qd9+MBMbWsTN49BwVlOUHKn9hp56XqRNWIWyrA55jDqL6iicuXtb8Xx//kvkccyUByLEde72oGf2/IRBIAgCvfVXH/hP6wJy1f6XjL0Or6I1qX98gWSGvN9HYObpKNGm/64vtoSpHDC1JWtcuf5ZzlsA4R8XbZKS/Tn0Y9kC89pmPnHYLscWtOFoirIRJ0DXqF/PM3kB4jilEe5Y26cvQK2LaSYcuKX7iL4rWLlVrWIh7EkoFH9Un4f8hruVSbhJMWbN+dXZyNn5BHq/+rASd0pCts3fz05xX4dYlfawDeX74MhFxnKcPZu9pS2hjqDZAPmuqKo/DWWDcsO2wT0R0Fd5k/rwtXFOxQgH07cDVkeIDpLjlT3jBdxQ6X9eDfC/EP+nQv+9WgwKkeG5FXDiIbd1++iS6Mb9V4OHmUowZDopiRFqCD5GeBQTkwEe8w05QJ4Dhdu5a5l1y3CzpS/hGgwr9Sos0QrrVXJI7x6Ah1+U05c4TNHXRe8lBUPJNWUHWBXgKznDKBh1+O+Y+jqKxTyIldTfkfXP/5H13/3Hk='
  200. // };
  201. // try {
  202. // const response = await axios({
  203. // method: 'get',
  204. // url: url,
  205. // headers: headers,
  206. // httpsAgent: new (require('https').Agent)({
  207. // rejectUnauthorized: false
  208. // })
  209. // });
  210. // console.log(response.data);
  211. // return response.data;
  212. // } catch (error) {
  213. // console.error('Error:', error.message);
  214. // throw error;
  215. // }
  216. // }
  217. // let data = await hy_search_book.search_id("1868479666362478594")
  218. // console.log("data:",data)
  219. // let response = helper.resolveDomain("clipvideoup.s6kuwan.com")
  220. // console.log("response:",response)
  221. // let MainConfig = await redis_help.getKeyValue("MainConfig")
  222. // MainConfig = JSON.parse(MainConfig)
  223. // let PlatformConfig = await redis_help.getKeyValue("PlatformConfig")
  224. // PlatformConfig = JSON.parse(PlatformConfig)
  225. // let PlatformInfo = getPlatformInfoByI(PlatformConfig,4)
  226. // let main_info = getMainInfoById(MainConfig,150)
  227. // let data = {
  228. // product_id:"11010288676",
  229. // product_name:"侍女有谋"
  230. // }
  231. // require("./5_CREATE_LINK_FACTORY/dz_create_link").runTask(data,main_info,PlatformInfo,()=>{
  232. // })
  233. // let data = await require('./src/api/dz/dz_search_book').search_id('11010288676')
  234. // console.log("data:",data)
  235. // require('./src/api/qm/qm_search_book').search_id('396740')
  236. // console.log("results:",await redis_help.getKeyValue("isPauseTask"))
  237. // let MainConfig = await redis_help.getKeyValue("MainConfig")
  238. // MainConfig = JSON.parse(MainConfig)
  239. // let PlatformConfig = await redis_help.getKeyValue("PlatformConfig")
  240. // PlatformConfig = JSON.parse(PlatformConfig)
  241. // let PlatformInfo = getPlatformInfoByI(PlatformConfig,3)
  242. // let main_info = getMainInfoById(MainConfig,151)
  243. // let data = {
  244. // product_id:"393425",
  245. // product_name:"转学生自称苗疆圣子,可我才是真圣子"
  246. // }
  247. // let {promotion_name} = await require("./5_CREATE_LINK_FACTORY/qm_create_link").runTask(data,main_info,PlatformInfo,()=>{
  248. // })
  249. // console.log("promotion_name:",promotion_name)
  250. // let n_data = await require("./src/api/qm/get_qm_promotion").getPromotionList(promotion_name)
  251. // console.log("get_qm_promotion:",n_data)
  252. // let get_hy_group_mapping = require('./src/api/hy/get_hy_group_mapping');
  253. // get_hy_group_mapping.get_group_mapping((data)=>{
  254. // if(data.code==200){
  255. // let list = data.data
  256. // }
  257. // console.log("get_hy_group_mapping:",data)
  258. // })
  259. // setTimeout( async ()=>{
  260. // let black_books = await redis_help.getKeyValue("all_black_books")
  261. // console.log("black_books:",black_books)
  262. // },5000)
  263. // let main = async function(){
  264. // let test = new HttpClient()
  265. // const postData = {
  266. // cmd:"create_link",
  267. // name:"台风夜老婆去救男秘书",
  268. // bookId:"1848991033902665730",
  269. // topUpTemplateId:"1854833762266247169",
  270. // passBackTemplateId:"6",
  271. // paidPoint:"9999999",
  272. // token:await tools.getHyToken()
  273. // };
  274. // let data = {
  275. // "name": postData.name,
  276. // "bookId": postData.bookId,
  277. // "passBackTemplateId": postData.passBackTemplateId,
  278. // "adPassbackTemplateId": "",
  279. // "topUpTemplateId": postData.topUpTemplateId,
  280. // "mediaChannel": "1",
  281. // "group": "35",
  282. // "paidPoint": postData.paidPoint,
  283. // "site": "5"
  284. // }
  285. // let res = await test.otherPost( helper.getHyCreateLinkOpt(postData.token) ,data)
  286. // console.log("res:",res)
  287. // let response = {
  288. // "message": "create_link successfully",
  289. // "received_data":{"originalId":res["data"]["originalId"],
  290. // "appId":res["data"]["appId"],
  291. // "launchPath":res["data"]["launchPath"],
  292. // "fullPath":res["data"]["fullPath"],
  293. // "wxMountLink":res["data"]["wxMountLink"]}
  294. // }
  295. // console.log("response:",response)
  296. // }
  297. // var main = function(){
  298. // require("./2_PRODUCT_FACTORY/PRODUCT_FACTORY")
  299. // require("./5_CREATE_LINK_FACTORY/CREATE_LINK_FACTORY")
  300. // require("./MAIN_SERVE_FACTORY/MAIN_SERVE_FACTORY")
  301. // require("./0_RECEIVE_FACTORY/RECEIVE_FACTORY")
  302. // require("./1_FILTER_FACTORY/FILTER_FACTORY")
  303. // }
  304. // let main = function(){
  305. // let manager = new ProcessManager()
  306. // manager.start()
  307. // manager.workers.forEach((v,k)=>{
  308. // if (v.process) {
  309. // v.process.send({
  310. // type: 'config',
  311. // data: { /* 配置数据 */ }
  312. // });
  313. // }
  314. // })
  315. // }