本文共 1721 字,大约阅读时间需要 5 分钟。
不能让你暴富,但至少可以奔小康了!
想了解更多精彩内容,快来关注南大盛联
阅读本文,假定你使用的是Windows操作系统下面的python3.X版本。
并且已经掌握了一些基本的python操作。否则,请从本系列的第一篇开始阅读。
我们力求看到这篇文章的朋友,都不会因为太复杂而看不懂。
存档这个技术活,或者说持久化,都需要解决哪些问题呢?我看就三个问题:
1:存到哪里?
2:如何存?
3:存什么?
1:存到哪里?
这个目前第一步的话,就是存到本地电脑的硬盘上,就是我们说的C盘或者D盘,或者其他的硬盘上,都是可以的。
暂且先不去了解Linux,或者存到数据库,这是下一阶段的事情,后面都会一一展开讨论。
比如存档的时候,就是存到D盘下面资料夹A201022,这个资料夹名字没有啥新意,就是代表2020年10月22日建立的。
2:如何存?
如果使用python自带模块urllib下的requests方法
代码这样写:
with open('d:\\A201022\\ndsl.html','w') as f:
print(data.read(),file = f)
如果使用第三方模块requests方法
with open('d:\\A201022\\ndsl.html','w') as f:
print(data.url,file = f)
!!!注意:requests模块中没有read()方法。
可能有的同学看到这个什么方法,头就大了,其实这是面向对象的编程里面的名词。
这里容易踩的坑就是:
A:路径的写法:比如我们的路径是D:\A201022\ndsl.html,我们假定是windows系统下
我们可以使用2种方法来进行路径描述,一种写法是双斜杠!
在代码中直接就是:D:\\A201022\\ndsl.html
另一种写法是反斜杠!
或者D:/A201022/ndsl.html
中间隔开的地方必须双斜杠。
我们先记住这样就可以。因为单独的斜杠\是转义符的意思。
B:路径必须写在单引号中
C:必须提前建立好资料夹,还有html文件,其实这个文件非常好建立,建立一个记事本文件,然后把后缀名改为html就可以了。如果不显示后缀名,请开启文件夹显示后缀名。
3:存什么?
就是利用python中自带的urllib模块中的request方法,或者是第三方模块requests.
严重注意:request和requests虽然只有一个字母之差,但是根本不同。不要去试图比较他们。
我们假定
urllib模块中的request方法
import urllib.request
url = 'http://www.baidu.com'
data = urllib.request.urlopen(url)
第三方模块中的requests方法
import requests
url = 'http://www.baidu.com'
data = requests.get(url)
这样的话,就是把我们访问的地址写进去了。
result=requests.post(url,data,headers)
注意这里是模版,前面这个result可以依照自己的要求进行更改的。
requests.post不能更改,url替换成网址,需要用单引号引起来,headers是个字典变量,这样的{‘User-Agent’:‘’}
后面单引号中填写自己浏览器中的用户代理。
任何浏览器中输入about:version获得!
result.text #可以获取响应的内容如抓回来的网页
result. encoding='utf-8'
#有时回来的是乱码,改变编码以使其正常显示根据实际情况改变编码utf-8、gb2312等
result. content #可以获取二进制内容,如抓取登陆时的验证码等非字符资源
result.cookies #可以查看当前保存的cookie情况
result. status_code #可以查看HTTP状态码(如200 OK、404 Not Found等)
result.url #可以查看当前请求的网址
转载地址:http://vgrzs.baihongyu.com/