我试图在python中围绕async/await.
我是在正确的轨道上吗?
async和@coroutine函数返回coroutine/generator,而不是返回值.await 提取协程/发生器的实际返回值.
async 函数结果(coroutines)意味着要添加到事件循环中.
await 在事件循环和等待的协程之间创建"桥梁"(启用下一个点).@coroutine的yield直接与事件循环通信.(跳过等待结果的直接来电者)
await 只能在异步函数中使用.
yield只能在里面使用@coroutine.(@coroutine= @types.coroutine)
我需要将字符串HTML从西里尔和拉丁符号的混合转换为UNICODE.
我尝试了以下方法:
Public HTML As String
Sub HTMLsearch()
GetHTML ("http://nfs.mobile.bg/pcgi/mobile.cgi?act=3&slink=6jkjov&f1=1")
MsgBox HTML
HTML = StrConv(HTML, vbUnicode)
MsgBox HTML
End Sub
Function GetHTML(URL As String) As String
With CreateObject("MSXML2.XMLHTTP")
.Open "GET", URL, False
.Send
HTML = .ResponseText
End With
End Function
Run Code Online (Sandbox Code Playgroud)
您可以看到StrConv之前和之后的内容.如果您想在文件中获取html,可以使用以下代码:
Public HTML As String
Sub HTMLsearch()
GetHTML ("http://nfs.mobile.bg/pcgi/mobile.cgi?act=3&slink=6jkjov&f1=1")
Dim path As String
path = ThisWorkbook.path & "\html.txt"
Open path For Output As #1
Print #1, HTML
Close #1
HTML = StrConv(HTML, vbUnicode)
path = ThisWorkbook.path & "\htmlUNICODE.txt"
Open path …Run Code Online (Sandbox Code Playgroud)