相关疑难解决方法(0)

urllib,urllib2和requests模块之间有什么区别?

在Python,有什么之间的差异urllib,urllib2以及urllib3模块?为什么有三个?他们似乎做同样的事情......

python urllib urllib2 python-2.x python-requests

690
推荐指数
11
解决办法
29万
查看次数

在Python 3中从Web下载文件

我正在创建一个程序,它将从Web服务器下载.jar(java)文件,方法是读取同一游戏/应用程序的.jad文件中指定的URL.我正在使用Python 3.2.1

我设法从JAD文件中提取JAR文件的URL(每个JAD文件都包含JAR文件的URL),但是您可以想象,提取的值是type()字符串.

这是相关的功能:

def downloadFile(URL=None):
    import httplib2
    h = httplib2.Http(".cache")
    resp, content = h.request(URL, "GET")
    return content

downloadFile(URL_from_file)
Run Code Online (Sandbox Code Playgroud)

但是我总是得到一个错误,说上面函数中的类型必须是字节,而不是字符串.我尝试过使用URL.encode('utf-8'),还有字节(URL,encoding ='utf-8'),但我总是得到相同或类似的错误.

所以基本上我的问题是当URL存储在字符串类型中时如何从服务器下载文件?

python python-3.x

294
推荐指数
6
解决办法
26万
查看次数

基本的http文件下载并保存到python中的磁盘?

我是Python的新手,我一直在浏览本网站上的问答,以回答我的问题.但是,我是初学者,我发现很难理解一些解决方案.我需要一个非常基本的解决方案

有人可以向我解释一个简单的解决方案:"通过http下载文件"和"将其保存到Windows中的磁盘"吗?

我也不确定如何使用shutil和os模块.

我想下载的文件不到500 MB,是一个.gz存档文件.如果有人可以解释如何提取存档并利用其中的文件,那就太棒了!

这是一个部分解决方案,我从各种答案中总结出来:

import requests
import os
import shutil

global dump

def download_file():
    global dump
    url = "http://randomsite.com/file.gz"
    file = requests.get(url, stream=True)
    dump = file.raw

def save_file():
    global dump
    location = os.path.abspath("D:\folder\file.gz")
    with open("file.gz", 'wb') as location:
        shutil.copyfileobj(dump, location)
    del dump
Run Code Online (Sandbox Code Playgroud)

有人可以指出错误(初学者级别)并解释任何更简单的方法来做到这一点?

谢谢!

python file download save

141
推荐指数
6
解决办法
27万
查看次数

如何使用我已知道其URL地址的Python在本地保存图像?

我知道Internet上图像的URL.

例如http://www.digimouth.com/news/media/2011/09/google-logo.jpg,其中包含Google的徽标.

现在,如何使用Python下载此图像,而无需在浏览器中实际打开URL并手动保存文件.

python web-scraping

135
推荐指数
8
解决办法
20万
查看次数

如何在Python中编写下载进度指示器?

我写一个小程序下载文件通过HTTP(如,例如,描述在这里).

我还想包含一个小的下载进度指示器,显示下载进度的百分比.

这是我想出的:

    sys.stdout.write(rem_file + "...")    
    urllib.urlretrieve(rem_file, loc_file, reporthook=dlProgress)

    def dlProgress(count, blockSize, totalSize):
      percent = int(count*blockSize*100/totalSize)
      sys.stdout.write("%2d%%" % percent)
      sys.stdout.write("\b\b\b")
      sys.stdout.flush()

输出:MyFileName ... 9%

还有其他想法或建议吗?

有点烦人的是在百分比的第一位数字中终端闪烁的光标.有办法防止这种情况吗?有没有办法隐藏光标?

编辑:

这里有一个更好的替代方法,在dlProgress和'\ r'代码中使用全局变量作为文件名:

    global rem_file # global variable to be used in dlProgress

    urllib.urlretrieve(rem_file, loc_file, reporthook=dlProgress)

    def dlProgress(count, blockSize, totalSize):
      percent = int(count*blockSize*100/totalSize)
      sys.stdout.write("\r" + rem_file + "...%d%%" % percent)
      sys.stdout.flush()

输出:MyFileName ... 9%

并且光标显示在行的END处.好多了.

python http

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

Selenium pdf自动下载无效

我是selenium的新手,我正在编写一个刮刀,可以从给定的站点自动下载pdf文件.

以下是我的代码:

from selenium import webdriver

fp = webdriver.FirefoxProfile()

fp.set_preference("browser.download.folderList",2);
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir", "/home/jill/Downloads/Dinamalar")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/pdf")

browser = webdriver.Firefox(firefox_profile=fp)
browser.get("http://epaper.dinamalar.com/PUBLICATIONS/DM/MADHURAI/2015/05/26/PagePrint//26_05_2015_001_b2b69fda315301809dda359a6d3d9689.pdf");
webobj = browser.find_element_by_id("download").click();
Run Code Online (Sandbox Code Playgroud)

我按照Selenium 文档和此链接中提到的步骤进行操作.我不确定为什么每次都会显示下载对话框.

有没有办法解决它,否则有一种方法可以提供"应用程序/所有",以便可以下载所有文件(解决方法)?

python selenium web-crawler web-scraping selenium-webdriver

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

下载HTML5 cache.manifest文件中列出的所有工件的最佳方法?

我试图看看HTML5应用程序是如何工作的,任何在webkit浏览器中保存页面的尝试(chrome,Safari)都包含一些但不是所有的cache.manifest资源.是否有一个库或一组代码将解析cache.manifest文件,并下载所有资源(图像,脚本,CSS)?

(原始代码移动回答... noob错误>.<)

python html5 parsing

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

如何使用Python下载pdf文件?

我正在寻找一种在 python 中下载 pdf 文件的方法,并且我看到了推荐 urllib 模块的其他问题的答案。我尝试使用它下载 pdf 文件,但是当我尝试打开下载的文件时,会显示一条消息,提示无法打开该文件。

错误信息

这是我使用的代码-

import urllib
urllib.urlretrieve("http://papers.gceguide.com/A%20Levels/Mathematics%20(9709)/9709_s11_qp_42.pdf", "9709_s11_qp_42.pdf")
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?此外,该文件会自动保存到我的 python 文件所在的目录中。如何更改保存它的位置?

编辑 - 我再次尝试使用示例 pdf 的链接,http://unec.edu.az/application/uploads/2014/12/pdf-sample.pdf

该代码正在使用此链接,那么为什么它不适用于另一个链接呢?

python pdf download downloading-website-files python-2.7

6
推荐指数
2
解决办法
1万
查看次数

如何使用Python下载文件?

我对 Python 完全陌生,我想通过向服务器发送请求来下载文件。当我在浏览器中输入它时,我看到 CSV 文件已下载,但是当我尝试发送 get 请求时,它没有返回任何内容。例如:

import urllib2
response = urllib2.urlopen('https://publicwww.com/websites/%22google.com%22/?export=csv')
data = response.read()
print 'data: ',  data
Run Code Online (Sandbox Code Playgroud)

它没有显示任何内容,我该如何处理?当我在网上搜索时,所有的问题都是关于如何发送一个 get 请求。我可以发送 get 请求,但我不知道如何下载文件,因为它不在请求的响应中。

我不知道如何找到解决方案。

python get download

6
推荐指数
3
解决办法
1万
查看次数

将python代码打印为PDF

我必须打印到PDF的离散数量的python脚本.代码应该作为文本而不是图像包含在内,因为它必须通过反抄袭机制进行检查(我不需要处理这个问题,只是要求pdf不是由图像制作的,而是全部).语法高亮也是必要的.

您对此特定工具有任何建议吗?

python printing pdf

5
推荐指数
2
解决办法
2万
查看次数