小编Dan*_*nik的帖子

requests.get 和 aiohttp GET 和 Httpx 模块之间的不同结果

我正在尝试访问具有机器人防护功能的网站。

使用以下脚本使用请求我可以访问该网站。

request = requests.get(url,headers={**HEADERS,'Cookie': cookies})
Run Code Online (Sandbox Code Playgroud)

我得到了所需的 HTML。但是当我使用 aiohttp 时

async def get_data(session: aiohttp.ClientSession,url,cookies):
    async with session.get(url,timeout = 5,headers={**HEADERS,'Cookie': cookies}) as response:
        text = await response.text()
        print(text)
Run Code Online (Sandbox Code Playgroud)

我收到机器人预防页面作为响应。

这是我用于所有请求的标头。

HEADERS = {
    'User-Agent': 'PostmanRuntime/7.29.0',
    'Host': 'www.dnb.com',
    'Connection': 'keep-alive',
    'Accept': '/',
    'Accept-Encoding': 'gzip, deflate, br'
} 
Run Code Online (Sandbox Code Playgroud)

我比较了 requests.get 和 aiohttp 的请求标头,它们是相同的。

结果不同有什么原因吗?如果是这样为什么?

编辑:我检查了 httpx 模块,问题也出现在httpx.Client()那里httpx.AsyncClient()

response = httpx.request('GET',url,headers={**HEADERS,'Cookie':cookies})
Run Code Online (Sandbox Code Playgroud)

效果不太好。(不是异步的)

python python-requests python-asyncio aiohttp httpx

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

Gradle - 为工件提取的空文件夹:ResolvedArtifact

我在模块 build.gradle 中的 gradle android 项目中有以下行

dependencies {
 // a lot of dependencies
 implementation 'org.tensorflow:tensorflow-lite-select-tf-ops:0.0.0-nightly-SNAPSHOT'
}
Run Code Online (Sandbox Code Playgroud)

并导致 gradle 构建失败并出现以下错误

Null extracted folder for artifact: ResolvedArtifact(componentIdentifier=org.tensorflow:tensorflow-lite-select-tf-ops:0.0.0-nightly-SNAPSHOT:20210331.060351-75, variantName=null, artifactFile=C:\Users\USER\.gradle\caches\modules-2\files-2.1\org.tensorflow\tensorflow-lite-select-tf-ops\0.0.0-nightly-SNAPSHOT\b03a88bda4ad93e6fefe285f9ea303d28433eacc\tensorflow-lite-select-tf-ops-0.0.0-nightly-SNAPSHOT.aar, extractedFolder=null, dependencyType=ANDROID, isWrappedModule=false, buildMapping={__current_build__=C:\Users\USER\Desktop\Myapp2}, mavenCoordinatesCache=com.android.build.gradle.internal.ide.dependencies.MavenCoordinatesCacheBuildService$Inject@5c4450a)
Run Code Online (Sandbox Code Playgroud)

我在一个不同的项目中有相同的实现并且它有效,但在这个项目中这个错误不断出现。

是什么导致了这个错误?我该如何解决?

android gradle tensorflow-lite

3
推荐指数
3
解决办法
1162
查看次数