Python3.4 获取百度网页源码并保存在本地文件中

最近学习python

版本 3.4

抓取网页源码并且保存在本地文件中

 

import urllib.request

url='http://www.baidu.com'

#上面的url一定要写明确,如果写成www.baidu.com,下一步就会报错。
response=urllib.request.urlopen(url)
#下一步获取html,但是是Byte格式的,我们要解码
html=response.read()
html_str=html.decode('utf-8')

#下面我们把get的网页写在文件中。
f=open(r'D:\baidu.html','w',encoding='utf-8')

f=write(html_str)
#写完别忘记关闭
f.close()

 

string和byte类型相互转换

 

str.encode('utf-8')

byte.decode('utf-8')

 

转载于:https://www.cnblogs.com/SunnyZhu/p/5691277.html

在前端网页开发,有时候需要将一些数据或者文件保存到本地存储,使得用户可以在下次打开网页时方便地找到之前保存的内容。这时候就需要用到JavaScript的本地存储功能。 JavaScript的本地存储API包括localStorage和sessionStorage。其,localStorage可以将数据永久保存在用户的本地磁盘上,而sessionStorage则只在当前会话保存数据,如果用户关闭了浏览器窗口,数据就会被清除。 保存文件到本地存储一般分为两种情况:文本文件和二进制文件。 对于文本文件,可以通过Blob对象进行处理。Blob是一种不可变的二进制对象,可以存储任何类型的文件,包括文本、图像和音频等。要将文本内容保存为Blob对象,可以使用以下代码: ```javascript var text = "This is a test text."; var blob = new Blob([text], {type: "text/plain"}); ``` 这里将文本内容保存在text变量,并使用Blob构造函数将文本内容封装为Blob对象。type参数指定了文件类型,如果文本包含HTML标签,可以使用"text/html"。 接着,可以将Blob对象保存到本地存储。以下代码示例将Blob对象保存到localStorage: ```javascript localStorage.setItem("testBlob", blob); ``` 保存完成后,可以通过getItem方法获取保存的Blob对象,然后使用FileReader对象读取文本内容或者使用URL对象生成下载链接。 对于二进制文件,也可以使用Blob对象进行处理。读取图片等二进制文件的流程类似于读取文本文件。以下代码示例将图片文件保存为Blob对象,并将Blob对象保存到localStorage: ```javascript var dataURI = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQ ..."; var byteString = atob(dataURI.split(',')[1]); var arrayBuffer = new ArrayBuffer(byteString.length); var intArray = new Uint8Array(arrayBuffer); for (var i = 0; i < byteString.length; i++) { intArray[i] = byteString.charCodeAt(i); } var blob = new Blob([arrayBuffer], {type: 'image/jpeg'}); localStorage.setItem('testImage', blob); ``` 在这个代码示例,dataURI变量存储的是图片的Base64编码。首先使用atob方法解码Base64字符串,并使用ArrayBuffer对象创建一个缓冲区。接着,使用Uint8Array视图加载缓冲区数据,并将解码后的数据存储到其。最后,使用Blob构造函数将图片数据封装为Blob对象后保存到本地存储。 总的来说,JavaScript的本地存储API可以很方便地实现文件保存到本地的功能。通过使用Blob对象,可以将文本文件和二进制文件封装为统一的数据结构进行处理,是前端网页开发非常重要的一项功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值