看板 LoL作者 panex0845 (胖克思)標題 Re: [閒聊] 積分選角隱藏隊友名字 如何查戰績?時間 Thu Jan 12 17:28:49 2023
※ 引述《a5687920 (苦大師)》之銘言:
: 現在積分隱藏隊友名字 有點不人道耶
: 因為查到雷包我寧願跳game 等五分鐘 也不想進去浪費20分...
: 這機制到底何時會改回來 現在原廠直營 要查更方便了
: 還有辦法在選角時查到嗎?
========警告=======
本文僅用於學術教育目的 請勿使用任何方法去查詢隊友ID
看到任何宣稱可以在積分查隊友的APP或網頁也不要使用
否則你的帳號會被BAN 14天
===================
要查隊友ID很簡單,用RIOT內建的LCU就可以查了 (13.1仍可用)
以python為例,實作如下:
首先先導入需要的模組,並建立一個類別
from win32com.client import GetObject
import base64, requests
requests.packages.urllib3.disable_warnings()
class LCU:
def __init__(self):
self.process = 'LeagueClientUx.exe'
self.protocol = 'https'
self.host = '127.0.0.1'
建立一個函式,使用wmi去查詢需要的資料
def get_gameData(self):
winmgmts = GetObject('winmgmts:')
processes = winmgmts.InstancesOf('Win32_Process')
for p in processes:
if p.Properties_("Name").Value == self.process:
return p.Properties_[1].Value
這個會返回下列字串
"D:/Riot Games/League of Legends/LeagueClientUx.exe"
"--riotclient-auth-token=xxxxxxxxxxxxxxxxx"
"--riotclient-app-port=12345"
其他不重要的就不貼了,我們要是riotclient token 跟 app-port
用re處理一下,宣告變數如下
self.riotclientToken = xxxxxxxxxxxxxxxxx
self.riotclientPort = 12345
接著要把這個Token轉成base64
self.token = base64.b64encode(('riot:' + self.riotclientToken)
.encode("ascii")).decode('ascii')
再宣告hearder,下面的請求函式會用到
self.headers = {'Accept': 'application/json, text/plain, */*',
'Authorization' : f'Basic {self.token}'}
最後建立一個請求函式就大功告成了
def open_request(self, url):
u = f'{self.protocol}://{self.host}:{self.riotclientPort}{url}'
r = requests.get(u, headers=self.headers, verify=False)
return r.text
如果成功,會回傳一個json格式的字串,裡頭就是所有玩家資料
主程式如下,在選角的時候執行就會印出所有玩家了
def main():
url = '/chat/v5/participants/champ-select'
lcu = LCU()
players = lcu.open_request(url)
print(players)
=====再次警告=====
這是RIOT開放的內建LCU API,理論上可以用
但是現在(13.1)用了就是BAN 14天
愛惜帳號 千萬不要用
==================
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.171.162.245 (臺灣)
※ 文章代碼(AID): #1ZlzBJim (LoL)
※ 文章網址: https://www.ptt.cc/bbs/LoL/M.1673515731.A.B30.html
※ 同主題文章:
Re: [閒聊] 積分選角隱藏隊友名字 如何查戰績?
01-12 17:28 panex0845
推 fishpill: 恩 先推以防別人覺得我看不懂3F 01/12 17:33
推 wai0806: 我就知道是這樣 你怎麼分享出來了5F 01/12 17:37
推 Godist: LCU API 還能用在像是批量加好友、批量分解碎片、開寶箱、兌換活動代幣、3種方式的改名(G社時期可以用9F 01/12 17:42
→ Godist: 這個方法創建16字中文ID,現在不確定)
使用其他LCU API的端點應該沒問題,只是將原本手動發出的請求改由程式發出,這個端點應該是客戶端無法請求,訪問這個端點的都會被視為異常導致被BAN12F 01/12 17:43
推 roliproject: 原本想說這麼簡單的東西大家應該都會,還是感謝你出來教20F 01/12 18:07
推 Godist: 是那個查隊友的節點在客戶端被禁用了,正常玩家無法使用那個節點,所以能請求的會被視為使用非法程式吧,不然我都用LCU API開箱和分解碎片的26F 01/12 18:23
推 Tiandai: 真的是LOL板可知天下事 只差LOL資訊了32F 01/12 18:38
推 Harry0109: LOL版除了LOL之外的事情真的很豐富...34F 01/12 18:52
推 A9226: 嗯嗯 跟我想的一樣36F 01/12 19:03
--