小编Cas*_*no 的帖子

如何连接用户数据流币安?

每当有订单事件(订单执行、取消等)时,我需要监听用户数据流,我希望能够监听这些事件并创建通知。

所以我得到了我的“listenKey”,我不确定它是否以正确的方式完成,但我执行了这段代码,它给了我类似listenKey的东西。

获取listenKey的代码:

def get_listen_key_by_REST(binance_api_key):
    url = 'https://api.binance.com/api/v1/userDataStream'
    response = requests.post(url, headers={'X-MBX-APIKEY': binance_api_key}) 
    json = response.json()
    return json['listenKey']

print(get_listen_key_by_REST(API_KEY))
Run Code Online (Sandbox Code Playgroud)

以及监听用户数据流的代码 - 这不起作用,我没有得到 json 响应。

socket = f"wss://fstream-auth.binance.com/ws/btcusdt@markPrice?listenKey=<listenKeyhere>"

def on_message(ws, message):
    json_message = json.loads(message)
    print(json_message)

def on_close(ws):
    print(f"Connection Closed")
    # restart()

def on_error(ws, error):
    print(f"Error")
    print(error)

ws = websocket.WebSocketApp(socket, on_message=on_message, on_close=on_close, on_error=on_error)
Run Code Online (Sandbox Code Playgroud)

我已阅读文档但无济于事。如果有人能指出我正确的方向,我将不胜感激。

python binance binance-api-client

7
推荐指数
1
解决办法
5437
查看次数

如何避免使用日志记录将转义字符输出到日志文件?

我正在尝试对信息、警告等名称进行颜色级别名称,但问题是当消息记录到日志文件时 - 有奇怪的字符。但是,它可以完美地打印到控制台。

代码:

import logging
import sys

logging.basicConfig(
    level=logging.INFO,
    format="%(asctime)s [%(levelname)s] %(message)s",
    handlers=[
        logging.FileHandler("log.txt"),
        logging.StreamHandler(sys.stdout)
    ]
)

 logging.addLevelName(logging.INFO, "\033[1;31m%s\033[1;0m" % logging.getLevelName(logging.INFO))

logging.info("This is just an information for you")
Run Code Online (Sandbox Code Playgroud)

这会用颜色打印级别名称“INFO”,但输出是:

2022-04-05 02:44:52,741 [[1;31mINFO[1;0m] This is just an information for you
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

编辑:

logging.addLevelName(logging.INFO, "\033[1;94m%s\033[1;0m" % logging.getLevelName(logging.INFO))
logging.addLevelName(logging.WARNING, "\033[1;93m%s\033[1;0m" % logging.getLevelName(logging.WARNING))
logging.addLevelName(logging.ERROR, "\033[1;91m%s\033[1;0m" % logging.getLevelName(logging.ERROR))
Run Code Online (Sandbox Code Playgroud)

python logging

1
推荐指数
1
解决办法
2472
查看次数

如何从文本文件中删除重复且包含某些单词的行?

我正在尝试从抓取的数据中删除重复的行和包含某些单词的行。我搜索了各种代码,但它们不起作用:(

这是代码。只有第一部分有效,即删除重复行:

openFile = open("links.txt", "r") 
writeFile = open("updatedfile.txt", "w") 
#Store traversed lines
tmp = set() 
for txtLine in openFile: 
#Check new line
    if txtLine not in tmp: 
        writeFile.write(txtLine) 
#Add new traversed line to tmp 
        tmp.add(txtLine)         
openFile.close() 
writeFile.close()

sleep(5)

with open("updatedfile.txt", "r") as fp:
    lines = fp.readlines()

with open("updatedfile.txt", "w") as fp:
    for line in lines:
        if line.strip("\n") != "search":
            fp.write(line)
Run Code Online (Sandbox Code Playgroud)

这是 links.txt 文件

https://twitter.com/search?q=%23BTC&src=hashtag_click
https://twitter.com/search?q=%23ADA&src=hashtag_click
https://twitter.com/search?q=%23LTC&src=hashtag_click
https://twitter.com/search?q=%23CAKE&src=hashtag_click
https://twitter.com/Marie62943337
https://twitter.com/Marie62943337
https://twitter.com/Fathur0501
https://twitter.com/Fathur0501
https://twitter.com/BogdanMar93
https://twitter.com/BogdanMar93
https://t.[spaced because body cannot contain short …
Run Code Online (Sandbox Code Playgroud)

python twitter selenium

0
推荐指数
1
解决办法
80
查看次数