Prechádzať zdrojové kódy

页面数据包完整获取

mrh 1 rok pred
rodič
commit
7830019397
4 zmenil súbory, kde vykonal 46 pridanie a 3 odobranie
  1. 4 0
      dp/audience.py
  2. 2 2
      dp/page.py
  3. 40 0
      main.py
  4. 0 1
      readme.md

+ 4 - 0
dp/audience.py

@@ -0,0 +1,4 @@
+from .page import page
+# 查看在线观众
+
+# 1. 获取在线观众列表

+ 2 - 2
dp/page.py

@@ -22,6 +22,6 @@ logger.debug(f"start '{page._chromium_options._browser_path}'")
 # 因此设置为 none 是最高效率、最迅速的,甚至不用 page.stop_loading() 因为停止过程中也要花费时间,而是直接请求空页面 about:blank 断开所有连接
 page.set.load_mode.none()
 # page.set.NoneElement_value('没找到')
-page.get("edge://version/")
-page.new_tab("http://www.baidu.com")
+# page.get("edge://version/")
+# page.new_tab("http://www.baidu.com")
 

+ 40 - 0
main.py

@@ -0,0 +1,40 @@
+from conf.config import logger
+from dp.page import page
+
+# url = input("输入直播间地址(如 https://live.douyin.com/1234568):")
+url = "https://live.douyin.com/389150144924"
+page.listen.start('live.douyin.com/webcast/room/web/enter')
+page.get(url)
+page._wait_loaded(5)
+logger.info(f"页面加载成功")
+res = page.listen.wait(1)
+logger.info(f"res.request {res.request}")
+# self._data_packet = data_packet
+# self._request = raw_request
+# self._raw_post_data = post_data
+# self._postData = None
+# self._headers = None
+logger.info(f"res.request._data_packet {res.request.data_packet}")
+logger.info(f"res.request._raw_request {res.request.raw_request}")
+logger.info(f"res.request._raw_post_data {res.request.raw_post_data}")
+logger.info(f"res.request._postData {res.request.post_data}")
+logger.info(f"res.request._headers {res.request.headers}")
+logger.info(f"res.request.cookies {res.request.cookies}")
+logger.info(f"res.request.extra_info {res.request.extra_info.all_info}")
+
+
+logger.info(f"res.response {res.response}")
+# self._data_packet = data_packet
+# self._response = raw_response
+# self._raw_body = raw_body
+# self._is_base64_body = base64_body
+# self._body = None
+# self._headers = None
+logger.info(f"res.response._data_packet {res.response.data_packet}")
+logger.info(f"res.response._raw_response {res.response.raw_response}")
+logger.info(f"res.response._raw_body {res.response.raw_body}")
+logger.info(f"res.response._is_base64_body {res.response.is_base64_body}")
+logger.info(f"res.response._body {res.response.body}")
+logger.info(f"res.response._headers {res.response.headers}")
+page.listen.stop()
+# page.quit()

+ 0 - 1
readme.md

@@ -2,7 +2,6 @@
 ```shell
 conda create -p .\env python=3.11
 conda activate I:\code\ai-yunying\live-online-people\env
-pip install portkey-ai
 pip install DrissionPage
 pip install loguru
 ```