python wget下载文件处理的一些问题


wget的安装 由于尝试pip安装一直失败,下载了wget3.2的数据包。 解压后运行python setup.py install即可完成安装。

基本使用的下载方法 import wget wget.download(downloadURL,filepathandname)

关于下载链接地址的获取 目前使用的方法:利用urllib得到网页数据,然后规则匹配得到相应的链接。 利用urllib获取(是否有更好的方法,BeautifulSoup?):

import urllib
from urllib import request
import re
pageRequest = request.urlopen(driver.current_url)
pageRead = pageRequest.read().decode('utf-8')
#为什么需要decode?
#在python3.0中 pageRequest.read()返回字节型数据,而re模块需要字符串
#系统提示错误can't use a string pattern on a bytes-like object
for eachline in pageRead.split('\n'):
    webDownloadURL = re.findall('src="(.+)"',eachline)
    if(len(webDownloadURL)>0) and re.search('iframe',eachline):
        wgetURL = webDownloadURL[0]
        print('%s'%wgetURL)

其他下载文件的方法

#1、文件存储形式
filedownload=urllib2.urlopen(url)
urldata=filedownload.read()
fwrite=open(path,'wb')
fwrite.write(urldata)
fwrite.close()
#2、urllib.urlretrieve
urllib.urlretrieve(url, filename)

关于文件系统的处理

文件主要使用到的包:os,shutil;判断文件是否存在:os.path.exists(‘….’)

#判断文件夹是否存在,不存在建立新的文件夹
import os
import shutil
if os.path.exists(prefixpathname):
    pass
else:
    os.mkdir(prefixpathname)     
#删除文件
os.rmdir(...)
os.remove(...)
#由于os.rmdir无法删除一个包含其他文件夹的文件夹,而shutil具有这样的功能
shutil.rmtree(...)
    原文作者:小炉灶
    原文地址: https://blog.csdn.net/DreamBitByBit/article/details/71922553
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞