python基础内容整理

python基础内容整理
1 open(path,mode,encoding)
(1)打开文件 file = open(‘music.html’,‘r’,ecoding=‘utf-8’)*
(2)encoding表示的是返回的数据采用何种编码,一般采用utf8或者gbk; 默认为gbk path 默认为相对于本工程的相对路径 如果路径不存在默认会创 建一个文件

2.BeautifulSoup
(1)from bs4 import BeautifulSoup
(2)soup.select(’’) 根 据 class 选 择 器 找 到对 应 的 标 签 的 内 容 , 返 回 值 是 列 表
(3)soup=BeautifulSoup(open(‘music.html’,‘rb’),features=“html.parser”)
(4)用html.psrser 进行解析,返回的编码格式为Unicode

python基础 王者荣耀皮肤的爬取

import requests
from urllib import request
from bs4 import BeautifulSoup
import os path="D:\WangZhePiFU"
if os.path.exists(path):
pass else:
os.makedirs(path)
url ='http://pvp.qq.com/web201605/js/herolist.json'

按照json进行解析,换回值为list类型,每一个元素为字典

response = requests.get(url).json()
print(response)
for hero in response:
num=hero['ename']
heroName=hero['cname']
skin_name=hero['skin_name']
skins=skin_name.split('|')
for i in range(len(skins)):
dUrl='http://game.gtimg.cn/images/yxzj/img201606/heroimg/'+str(num)+'/'+str(num)+'-bigskin-'+str(i+1)+'.jpg'
savaPath=path+'\'+heroName+'-'+skins[i]+'.jpg'
try:
request.urlretrieve(dUrl,savaPath)
except:
print(dUrl)
pass
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
3.urllib request
(1)向url这个网址发送请求 返回值为httpResponse

from urllib import request
response=request.urlopen(url)
1
2
(2)contest=response.read() 读取到的内容为butes类型

from bs4 import BeautifulSoup
url='http://www.i4.cn/ring_1_0_1.html'
response = request.urlopen(url)
contest = response.read()
list = BeautifulSoup(contest,features="html.parser").find_all('div',class_="btn audio_play")
print(list)
for item in list:
print(item['data-mp3'])
#取得属性的值
1
2
3
4
5
6
7
8
9
(3)file.write(contest)
contest为字节类型所以可以已二进制的形式直接写入到file中

file = open('music.html','wb')
file.write(contest)
file.close()
1
2
3
(4)request.urlretrieve(dUrl,path+’’+title+’.mp3’)
将durl网页,下载到本电脑的某个路径

4 OS
(1)建立目录

path="D:\music"
if os.path.exists(path):
pass
else:
os.makedirs(path)
1
2
3
4
5
(2)查看目录中是否有对应的文件

os.makedirs(path)
fileName ='music'
if fileName not in os.listdir():
os.mkdir(fileName)
1
2
3
4
5 requests
(1)requests.get(url,param)
对地址进行请求,返回的值类型为reaponse 可以进行进一步的操作,如获取内容,获得request等信息

Url ='http://bpic.wotucdn.com/27/80/36/27803639-b89aa0c19fdc6a4d88aa3632b46a414a.jpg!/fw/274/quality/90/unsharp/true/compress/true/canvas/274x416a0a0/format/webp'
headers={

访问的网址来源

'Referer':'http://www.ooopic.com/sousuo/7922/',
'Host':'bpic.wotucdn.com',
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0' 

}
context = requests.get(url=Url,headers=headers)
print(context.content)
file=open('tupian.webp','wb')
file.write(context.content)
file.close()
print(context)

版权声明:
作者:Yun·云上初生
链接:https://www.yunscs.com/python.html
来源:Yun·云上初生
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
< <上一篇
下一篇>>
文章目录
关闭