《python爬虫开发与项目实战》基础篇(一)
一.python安装
1.python IDLE
下载官网:www.python.org
注:在选择安装组件时勾选所有组件,特别注意勾选pip和Add python.exe to Path
2.pycharm
下载官网:https://www.jetbrains.com/pycharm/
由JetBrains打造的一款Python IDE,同时支持Google App Engine,IronPython
3.Anaconda
下载官网:https://www.anaconda.com/download/
一个开源的Python发行版本,包含了大量安装好的科学包如:numpy、pandas等
二.IO编程
1.文件读写
打开文件:
open函数中的mode参数:
open函数中的buffering参数:
文件读取与写入:经常用到的方法有read(),readlines(),write(),close()
read(size)一次最多读取size个字节,返回字符串;readlines()一次读取全部内容按行返回列表
文件使用完后必须关闭!使用try...finally进行文件操作防止IO异常
try:
f = open("D:/Python/test.txt","r+") # 'r+' == r+w(可读可写,文件若不存在就报错(IOError))
print(f.read())
f.write("def")
f.seek(0,0) # 把文件指针从末尾移到开头
print(f.read())
finally:
if f:
f.close()
python中可使用with语句替代try...finally代码块和close()方法
with open("D:/Python/test.txt","r+") as f:
print(f.read())
f.write("def")
f.seek(0,0)
print(f.read())
2.目录操作
常用模块:os模块和shutil模块
3.序列化
把内存中的变量变成可存储或可传输的过程就是序列化
python中采用pickle模块实现序列化,主要使用dump方法(将序列化后的对象直接写入文件)或dumps方法(将任意对象序列化成一个str再写入文件保存)
import pickle
d = dict(url="index.html",title="首页",content="首页")
print(pickle.dumps(d))
with open("D:/Python/test.txt","wb") as f:
pickle.dump(d,f)
pickle模块实现反序列化主要使用load方法(将文件直接反序列化为对象)或loads方法(将str反序列化为对象)
with open("D:/Python/test.txt","rb") as f:
d = pickle.load(f)
print(d)
d = pickle.loads(b'\x80\x03}q\x00(X\x03\x00\x00\x00urlq\x01X\n\x00\x00\x00index.htmlq\x02X\x05\x00\x00\x00titleq\x03X\x06\x00\x00\x00\xe9\xa6\x96\xe9\xa1\xb5q\x04X\x07\x00\x00\x00contentq\x05h\x04u.')
print(d)