pythonurllib2和openers帮助如何只读取一个远程文件

2024-06-16 10:22:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从内容提供商下载内容,每次访问文档时都会向我收费。我写的代码正确地下载了内容,并保存在一个本地文件中,但显然它请求文件两次,我被双重收费。我不确定文件在哪里被请求了两次,下面是我的代码:

    password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()        
    # Add the username and password.
    password_mgr.add_password(None, top_level_url, username, password)        
    handler = urllib2.HTTPBasicAuthHandler(password_mgr)        
    # create "opener" (OpenerDirector instance)
    opener = urllib2.build_opener(handler)        
    # use the opener to fetch a URL
    file_stream = opener.open(url)        

    # Open our local file for writing
    local_file = open(directory + doc_name, "w+")
    #Write to our local file
    local_file.write(file_stream.read())

我需要知道如何在只请求一次文档的同时阅读内容。任何帮助都将不胜感激。在


Tags: 文件the代码文档url内容localusername
1条回答
网友
1楼 · 发布于 2024-06-16 10:22:21

它会不会请求两次文件,而只下载一次?第一个请求将是一个普通的GET(没有“Authorization”头),然后是http401(需要授权)的响应,然后是具有Authorization头的同一个请求。在

如果是这样的话,你应该和你的内容提供商谈谈,因为你只访问过一次。在

相关问题 更多 >