用Python下载一个网页保存为本地的HTML文件实例
我们可以用Python来将一个网页保存为本地的HTML文件,这需要用到urllib库。
比如我们要下载山东大学新闻网的一个页面,该网页如下:
实现代码如下:
import urllib.request def getHtml(url): html = urllib.request.urlopen(url).read() return html def saveHtml(file_name, file_content): # 注意windows文件命名的禁用符,比如 / with open(file_name.replace('/', '_') + ".html", "wb") as f: # 写文件用bytes而不是str,所以要转码 f.write(file_content) aurl = "http://www.view.sdu.edu.cn/info/1003/75240.htm" html = getHtml(aurl) saveHtml("sduview", html) print("下载成功")
打开相应的目录可以看到这个网页已经被下载保存成功了
我们用浏览器打开这个网页文件如下
由于我们只是下载了网页的主要源码,其中的很多图片之类的文件都不在这里。因此这种方法只适用于提取文字内容。
以上这篇用Python下载一个网页保存为本地的HTML文件实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
python3 requests中使用ip代理池随机生成ip的实例
啥也不说了,直接上代码吧! # encoding:utf-8 import requests # 导入requests模块用于访问测试自己的ip import random pro = ['1.119.129.2:8080', '115.174.66.148', '113.200.214.164'] # 在(http://www.xicidaili.com/wt/)上面收集的ip用于测试 # 没有使用字典的原因是 因为字典中的键是唯一的 http 和https 只能存在一个 所以不建议使用字典
-
详解Python requests 超时和重试的方法
网络请求不可避免会遇上请求超时的情况,在 requests 中,如果不设置你的程序可能会永远失去响应. 超时又可分为连接超时和读取超时. 连接超时 连接超时指的是在你的客户端实现到远端机器端口的连接时(对应的是 connect() ),Request 等待的秒数. import time import requests url = 'http://www.google.com.hk' print(time.strftime('%Y-%m-%d %H:%M:%S')) try: html = re
-
python3 requests库文件上传与下载实现详解
在接口测试学习过程中,遇到了利用requests库进行文件下载和上传的问题.同样,在真正的测试过程中,我们不可避免的会遇到上传和下载的测试. 文件上传: url = ztx.host+'upload/uploadFile?CSRFToken='+self.getCSRFToken()#上传文件的接口地址 header = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko', '
-
python实现requests发送/上传多个文件的示例
1.需要的环境 Python2.X Requests 库 2.单字段发送单个文件 在requests中发送文件的接口只有一种,那就是使用requests.post的files参数, 请求形式如下: url = "http://httpbin.org/post" data = None files = { ... } r = requests.post(url, data, files=files) 而这个files参数是可以接受很多种形式的数据,最基本的2种形式为: 字典类型 元组列表
-
浅谈python requests 的put, post 请求参数的问题
post, put请求的参数有两种形式 一种是把参数拼接在url中 对应postman 第二种是把参数放在body中 对应postman 在Python requests 库中 一般在的资料都会介绍 post,put请求的参数 用data 这种情况下参数会放在body中 但是有些接口参数通过body传入获取不到只能获取到URL中的参数 我们就需要用到 类似于get请求中的 params 传入参数 requests.post(url=url, params=data, verify=False,
-
解决python3中的requests解析中文页面出现乱码问题
第一部分 关于requests库 (1) requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到. (2) 其中的Request对象在访问服务器后会返回一个Response对象,这个对象将返回的Http响应字节码保存到content属性中. (3) 但是如果你访问另一个属性text时,会返回一个unicode对象,乱码问题就会常常发成在这里. (4) 因为Response对象会通过另一个属性encoding来将字节码编码成unicode,而这个en
-
Python基于FTP模块实现ftp文件上传操作示例
本文实例讲述了Python基于FTP模块实现ftp文件上传操作.分享给大家供大家参考,具体如下: #!/usr/bin/python #-*- coding:utf-8 -*- from ftplib import FTP #加载ftp模块 ftp=FTP() #设置变量 ftp.set_debuglevel(2) #打开调试级别2,显示详细信息 ftp.connect("IP","port") #连接的ftp sever和端口 ftp.login("us
-
用Python下载一个网页保存为本地的HTML文件实例
我们可以用Python来将一个网页保存为本地的HTML文件,这需要用到urllib库. 比如我们要下载山东大学新闻网的一个页面,该网页如下: 实现代码如下: import urllib.request def getHtml(url): html = urllib.request.urlopen(url).read() return html def saveHtml(file_name, file_content): # 注意windows文件命名的禁用符,比如 / with open(fil
-
详解Python下载图片并保存本地的两种方式
一:使用Python中的urllib类中的urlretrieve()函数,直接从网上下载资源到本地,具体代码: import os,stat import urllib.request img_url="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1516371301&di=d99af0828bb301fea27c2149a7070" \ "d44&am
-
Python下载网络文本数据到本地内存的四种实现方法示例
本文实例讲述了Python下载网络文本数据到本地内存的四种实现方法.分享给大家供大家参考,具体如下: import urllib.request import requests from io import StringIO import numpy as np import pandas as pd ''' 下载网络文件,并导入CSV文件作为numpy的矩阵 ''' # 网络数据文件地址 url = "http://archive.ics.uci.edu/ml/machine-learning
-
python 利用for循环 保存多个图像或者文件的实例
在实际应用中,会遇到保存多个文件或者图像的操作,利用for循环可以实现基本要求: for i in range(50): plt.savefig("%d.jpg"%(i+1)) 就解决了,出去50组图片. 和print格式化输出有异曲同工之妙: print ("she is %d years old"%(18)) 以上这篇python 利用for循环 保存多个图像或者文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
使用Python快速打开一个百万行级别的超大Excel文件的方法
知乎上有同学求助说,当他试图打开一个20M左右的excel文件时,无论是使用pandas的read_excel,还是直接使用xlrd或者openpyxl模块,速度都慢到无法忍受的程度,耗时大约1分钟左右. 真的会这样吗?第一感觉是,这位同学在使用openpyxl模块时没有设置只读模式.为便于测试,先用下面的代码生成一个一百万行数据的excel文件. >>> from openpyxl import Workbook >>> wb = Workbook() >>
-
基于Python实现一个自动关机程序并打包成exe文件
目录 1.实现效果 2.实现步骤 3.全部代码 Python代码打包exe文件在桌面运行的方式我之前有写,置顶了,也可以参考这里直接阅读:Python打包exe方法 1.实现效果 2.实现步骤 模块导入 import os,sys,time from PyQt5 import QtCore,QtWidgets,QtGui 窗口设置 def pageShow(self,page): #设置窗口的位置和大小 page.setGeometry(400,400,400,200) #设置窗口的标题 pa
-
jQuery读取本地的json文件(实例讲解)
最近写项目需要读取本地的json文件,然后悲催的发现前端新手的我居然不会,查查找找发现这东西并不难,但是应该是比较常用的,毕竟json太好用了! 我是直接用的 jquery 实现的,但是 Ajax 也可以,不过我用的Ajax的简约版 $.getJSON(url,function); 代码如下: function getScenemapData(){ var jsondata={}; $.getJSON("../server/php/files/scenedesc.json", func
-
python实现下载pop3邮件保存到本地
利用python进行unix管理一书中有一个登陆下载邮箱的脚本,实练了下还不错,对于邮箱备份来说还是比较快捷的,但是其命名方式是以编号和 文件大小来命名的,不方便阅读,于是进行了改进修改为发件人邮件地址命名,可能由于跨度时间较长,邮件排版有改变,有些邮件获取发件人的时候不能正确匹配. 1.命名方式是以编号和 文件大小来命名 #!/usr/bin/env python #-*- coding: utf-8 -*- #filename:receive_pop3_email_download.py i
-
PHP实现下载远程图片保存到本地的方法
在使用 PHP 做简单的爬虫的时候,我们经常会遇到需要下载远程图片的需求,所以下面来简单实现这个需求. 1.使用 curl 比如我们有下面这两张图片: $images = [ 'https://dn-laravist.qbox.me/2015-09-22_00-17-06j.png', 'https://dn-laravist.qbox.me/2015-09-23_00-58-03j.png' ]; 第一步,我们可以直接来使用最简单的代码实现: function download($url, $
-
用Python写一个模拟qq聊天小程序的代码实例
Python 超简单的聊天程序 客户端: import socket, sys host = '10.248.27.23' # host = raw_input("Plz imput destination IP:") # data = raw_input("Plz imput what you want to submit:") port = 51423 s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) tr
随机推荐
- Asp.NEt邮箱验证修改密码通过邮箱找回密码功能
- 气象 XML 数据源应用程序开发指南-简介
- 利用VBS实现显示系统服务列表
- Vue.js教程之axios与网络传输的学习实践
- 前端框架Vue.js构建大型应用浅析
- 给Oracle添加split和splitstr函数的方法
- 让python json encode datetime类型
- 比例尺、缩略图、平移缩放之百度地图添加控件方法
- JavaScript获取网页、浏览器、屏幕高度和宽度汇总
- 微信公众号开发客服接口实例代码
- C#将dll打包到程序中的具体实现
- C语言 格式化读写文件详解
- Vue2.0利用vue-resource上传文件到七牛的实例代码
- Android Handler主线程和一般线程通信的应用分析
- javascript实现一个数值加法函数
- Javascript类型系统之undefined和null浅析
- mysql重装后出现乱码设置为utf8可解决
- FreeBSD 6.0-RELEASE下建立高速DNS缓存服务器的方法
- c语言通过opencv实现轮廓处理与切割
- shell编程实现学生成绩管理系统