demo.py 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. # -*- coding: utf-8 -*-
  2. # @Author: wangkun
  3. # @Time: 2022/3/31
  4. from datetime import date, timedelta
  5. import datetime
  6. import json
  7. import re
  8. import time
  9. import requests
  10. import urllib3
  11. class Demo:
  12. @classmethod
  13. def demo1(cls):
  14. download_video_resolution = "720*1280"
  15. download_video_width = download_video_resolution.split("*")[0]
  16. download_video_height = download_video_resolution.split("*")[-1]
  17. print(download_video_resolution)
  18. print(download_video_width)
  19. print(download_video_height)
  20. @classmethod
  21. def time(cls):
  22. # 推荐
  23. time1 = int(time.time()*1000)
  24. print(time1)
  25. # 不推荐
  26. time2 = round(time.time())*1000
  27. print(time2)
  28. # 统一获取当前时间
  29. now = datetime.datetime.now()
  30. print(type(now))
  31. print(f"now:{now}")
  32. # 昨天
  33. yesterday = (date.today() + timedelta(days=-1)).strftime("%Y-%m-%d")
  34. print(type(yesterday))
  35. print(f"昨天:{yesterday}")
  36. # 今天
  37. today = date.today()
  38. print(type(today))
  39. print(f"今天:{today}")
  40. # 明天
  41. tomorrow = (date.today() + timedelta(days=1)).strftime("%Y-%m-%d")
  42. print(type(tomorrow))
  43. print(f"明天:{tomorrow}")
  44. @classmethod
  45. def get_douyin_feeds(cls):
  46. """
  47. 获取抖音feed流视频 https://www.douyin.com
  48. """
  49. url = "https://www.douyin.com/aweme/v1/web/tab/feed/?"
  50. params = {
  51. "device_platform": "webapp",
  52. "aid": "6383",
  53. "channel": "channel_pc_web",
  54. "count": "10",
  55. "refresh_index": "4",
  56. "video_type_select": "0",
  57. "version_code": "170400",
  58. "version_name": "17.4.0",
  59. "cookie_enabled": "true",
  60. "screen_width": "1920",
  61. "screen_height": "1080",
  62. "browser_language": "zh-CN",
  63. "browser_platform": "MacIntel",
  64. "browser_name": "Chrome",
  65. "browser_version": "99.0.4844.84",
  66. "browser_online": "true",
  67. "engine_name": "Blink",
  68. "engine_version": "99.0.4844.84",
  69. "os_name": "Mac OS",
  70. "os_version": "10.15.7",
  71. "platform": "PC",
  72. "cpu_core_num": "8",
  73. "device_memory": "8",
  74. "downlink": "10",
  75. "effective_type": "4g",
  76. "round_trip_time": "50",
  77. "msToken": "304uY1lV7HmHkR1G1QUaFqg0yrL5_WqrFOR8qCbl3hOsl8aSNI_18vIfpTGNhNRVZx7ysRiCHpcBKhpujTsbbC"
  78. "ZEDbG7pllZzlO3tlrBOs2TFYUgJdsvbw==",
  79. "X-Bogus": "DFSzswVYPVsANat/Sl8eGc3WxM23",
  80. "_signature": "qaJgTwAAy.aVqLslyfC7aKmiYF"
  81. }
  82. cookies = {
  83. "_tea_utm_cache_6383": "undefined",
  84. "ttwid": "1%7CETZk6sDMDSBgewWhKJXghFN4cwXTz0fLuhsLEngD_Nk%7C1648812136%7Cfa66fa81ccfe3f552f4"
  85. "e8b8327e72cbbc5e897141c25a5fcd32defaed1466d3e",
  86. "passport_csrf_token": "e2d0f1ed9fd22463be9f389137a781ce",
  87. "passport_csrf_token_default": "e2d0f1ed9fd22463be9f389137a781ce",
  88. "s_v_web_id": "verify_l1h7nzwr_ABN0FA2f_BTrM_4zSH_8WPN_2KY2iZFmbhE2",
  89. "_tea_utm_cache_1300": "undefined",
  90. "_tea_utm_cache_2285": "undefined",
  91. "ttcid": "3220eeda36a244beadd32a4b44d2044b31",
  92. "douyin.com": "",
  93. "__ac_nonce": "06247fb0f00f050ccc9b2",
  94. "__ac_signature": "_02B4Z6wo00f01AN7DoAAAIDB5nv.qI7xGZQDWwoAAGKfo4rd5YCAYF8o5PyppIpsdKxV0k2NerO"
  95. "f1VEQr3eJftkpgon9tcveDVpmfY555vzTTvRznegS1ax3KJXnoav2ZdEoYzwR3wDszPCk5d",
  96. "strategyABtestKey": "1648865029.449",
  97. "AB_LOGIN_GUIDE_TIMESTAMP": "1648865029279",
  98. "THEME_STAY_TIME": "299621",
  99. "IS_HIDE_THEME_CHANGE": "1",
  100. "home_can_add_dy_2_desktop": "0",
  101. "tt_scid": "vUl8CBW1SMQp2l5GmUIja5A6ziY1LByrsoN.P-wvKuutiB8ftvlfK.9ZEeehNC5u821d",
  102. "pwa_guide_count": "2",
  103. "msToken": "EHCmp9Qw7PAChI3do-MQPjOR29hf4ZFLYNrGl89HkFKdO5Iwb8n7z5fpETrgim2zFTIkGT"
  104. "ObOxH7HCrHCLVEX5eAuwAS1A2sjKH4MHEfjfPqA06Lo4v9Pw==",
  105. }
  106. try:
  107. urllib3.disable_warnings()
  108. r = requests.get(url=url, params=params, cookies=cookies, verify=False)
  109. # response = json.loads(r.content.decode("utf8"))
  110. print(r)
  111. print(type(r.text))
  112. print(r.text)
  113. except Exception as e:
  114. print(e)
  115. @classmethod
  116. def demo2(cls):
  117. s = "0"
  118. print(int(int(s) / 10))
  119. @classmethod
  120. def get_weishi_feeds(cls):
  121. url = "https://api.weishi.qq.com/trpc.weishi.weishi_h5_proxy.weishi_h5_proxy/WxminiGetFeedList"
  122. cookies = {
  123. "wesee_authtype": "3",
  124. "wesee_openid": "oWGa05FrwkuUvT-4n1qGeQuhVsc8",
  125. "wesee_openkey": "8c3ec202f5d679fb5ee6d9f643640d9a2580ba504612e2d979a881d3169caf189e2a5c1d532eeff172bc21cf2"
  126. "6230941ccbc10243a7879e8165ca608c17060de606a6d08afe0a3abd5250629314f9a99e9d1003b201bf5ec",
  127. "wesee_personid": "1593522421826902",
  128. "wesee_refresh_token": "",
  129. "wesee_access_token": "8c3ec202f5d679fb5ee6d9f643640d9a2580ba504612e2d979a881d3169caf18"
  130. "9e2a5c1d532eeff172bc21cf26230941ccbc10243a7879e8165ca608c17060de6"
  131. "06a6d08afe0a3abd5250629314f9a99e9d1003b201bf5ec",
  132. "wesee_thr_appid": "wx75ee9f19b93e5c46",
  133. "wesee_ichid": "8"
  134. }
  135. json_data = {
  136. "req_body": {
  137. "requestType": 16,
  138. "isrefresh": 0,
  139. "isfirst": 0,
  140. "attachInfo": "",
  141. "scene_id": 22,
  142. "requestExt": {
  143. "mini_openid": "oWGa05FrwkuUvT-4n1qGeQuhVsc8",
  144. "notLogin-personid": "1593522421826902"
  145. }
  146. },
  147. "req_header": {
  148. "mapExt": "{\"imageSize\":\"480\",\"adaptScene\":\"PicHDWebpLimitScene\"}"
  149. }
  150. }
  151. try:
  152. urllib3.disable_warnings()
  153. r = requests.post(url=url, cookies=cookies, json=json_data, verify=False)
  154. response = json.loads(r.content.decode("utf8"))
  155. feeds = response["rsp_body"]["feeds"]
  156. for feed in feeds:
  157. print(feed)
  158. except Exception as e:
  159. print(e)
  160. @classmethod
  161. def edit_str(cls):
  162. title_list = ["#上海战疫 上海累计感染超20万!这条被淹没的热搜,令全网泪目… 疫情一定要攻克,但所有人都不该遗忘这些弱者。#上海累计报告本土阳性感染者超20万例 #农民工",
  163. "#重庆地火村 #地火村 #旅行",
  164. "第79集 | 湖南最值得去的六个景区,每一个都是绝色…… #快手带你去旅行 #旅游胜地 #旅游",
  165. "霸王条款不废除,断供有多可怕。 #涨知识 #生活小常识 # 生活常识",
  166. "秦始皇还活着?地宫中有不明物体缓缓移动 #历史 #秦始皇 #新春寄语 @快手热点(O40300129)",
  167. "#夏日荷花 #国花牡丹 #昙花一现",
  168. "国内最良心的8个景区,这才是景区最该有的样子,看看你去过几个? #旅行  #旅游 ",
  169. "狗子呆在水里三天三夜,终于练成捕鱼神功,一口一个大鲶鱼 #狗狗  #神奇动物  #快手放映室  @快手热点(O40300129) ",
  170. "#集结吧光合创作者 养鸡小伙:喂鸡摆出各种造型,被称为鸡司令。",
  171. "89岁农民老艺人自食其力,街头卖艺表演“捏碎碗片”绝技,现场听到咔吱咔吱响,人狠功夫硬!这功夫已失传,以后再看不到了!#集结吧光合创作者 #农民 #街头表演 @快手光合作者助手(O40300118) @快手热点(O40300129) @我要上热门(O1907752910)",
  172. "我国最贵最有名的三棵树,你知道哪三棵吗?#旅游 #旅行攻略 #黄山迎客松",
  173. "潘长江带来热舞,蔡明 郭达也来了!太嗨了!歌词太棒了! @快手涨粉助手(O1815060199) @快手热点(O40300129) @快手平台帐号(O90041) #潘长江 #搞笑 #集结吧光合创作者",
  174. "#带你看世界 给大家带来一期烟花盛宴,希望大家能够喜欢,带上你的那个她一起来看吧 #烟花 #视觉震撼"
  175. ]
  176. for title in title_list:
  177. title_split1 = title.split(" #")
  178. if title_split1[0] != "":
  179. title1 = title_split1[0]
  180. else:
  181. title1 = title_split1[0]
  182. title_split2 = title1.split(" #")
  183. if title_split2[0] != "":
  184. title2 = title_split2[0]
  185. else:
  186. title2 = title_split2[-1]
  187. title_split3 = title2.split("@")
  188. if title_split3[0] != "":
  189. title3 = title_split3[0]
  190. else:
  191. title3 = title_split3[-1]
  192. print(title3)
  193. title = title3.replace("\n", "").replace("#", "").replace("/", "").replace("\r", "")
  194. print(title)
  195. # new_title = re.compile(r'(#)(.*)(#)')
  196. # print(new_title.sub(r'', title))
  197. @classmethod
  198. def kuaishou_sensitive_words(cls):
  199. sensitive_words = [
  200. "汽车",
  201. "电影解说",
  202. "放映室",
  203. "解说电影",
  204. "断供",
  205. ]
  206. return sensitive_words
  207. @classmethod
  208. def sensitive_words(cls):
  209. title_list = ["#上海战疫 上海累计感染超20万!这条被淹没的热搜,令全网泪目… 疫情一定要攻克,但所有人都不该遗忘这些弱者。#上海累计报告本土阳性感染者超20万例 #农民工",
  210. "#重庆地火村 #地火村 #旅行",
  211. "第79集 | 湖南最值得去的六个景区,每一个都是绝色…… #快手带你去旅行 #旅游胜地 #旅游",
  212. "霸王条款不废除,断供有多可怕。 #涨知识 #生活小常识 # 生活常识",
  213. "秦始皇还活着?地宫中有不明物体缓缓移动 #历史 #秦始皇 #新春寄语 @快手热点(O40300129)",
  214. "#夏日荷花 #国花牡丹 #昙花一现",
  215. "国内最良心的8个景区,这才是景区最该有的样子,看看你去过几个? #旅行  #旅游 ",
  216. "狗子呆在水里三天三夜,终于练成捕鱼神功,一口一个大鲶鱼 #狗狗  #神奇动物  #快手放映室  @快手热点(O40300129) ",
  217. "#集结吧光合创作者 养鸡小伙:喂鸡摆出各种造型,被称为鸡司令。",
  218. "89岁农民老艺人自食其力,街头卖艺表演“捏碎碗片”绝技,现场听到咔吱咔吱响,人狠功夫硬!这功夫已失传,以后再看不到了!#集结吧光合创作者 #农民 #街头表演 @快手光合作者助手(O40300118) @快手热点(O40300129) @我要上热门(O1907752910)",
  219. "我国最贵最有名的三棵树,你知道哪三棵吗?#旅游 #旅行攻略 #黄山迎客松",
  220. "潘长江带来热舞,蔡明 郭达也来了!太嗨了!歌词太棒了! @快手涨粉助手(O1815060199) @快手热点(O40300129) @快手平台帐号(O90041) #潘长江 #搞笑 #集结吧光合创作者",
  221. "#带你看世界 给大家带来一期烟花盛宴,希望大家能够喜欢,带上你的那个她一起来看吧 #烟花 #视觉震撼"
  222. ]
  223. print(cls.kuaishou_sensitive_words())
  224. for title in title_list:
  225. for word in cls.kuaishou_sensitive_words():
  226. if word in title:
  227. print(f"敏感词:{word}")
  228. print(f"敏感词视频:{title}")
  229. cls.kuaishou_sensitive_words().remove(word)
  230. else:
  231. print(f"正常视频:{title}")
  232. cls.kuaishou_sensitive_words().remove(word)
  233. if __name__ == "__main__":
  234. demo = Demo()
  235. # demo.demo1()
  236. demo.time()
  237. # demo.get_douyin_feeds()
  238. # demo.demo2()
  239. # demo.get_weishi_feeds()
  240. # demo.edit_str()
  241. # demo.sensitive_words()
  242. pass