补充:
创建虚拟环境的建议:
学习的时候:一类项目一个虚拟环境(爬虫的虚拟环境、数据分析的虚拟环境….)
实际工作、做项目:一个项目一个虚拟环境
pycharm设置动态模板:
settings --> editor --> live templates --> 点‘+’添加需要设置的动态模板
一、requests基本用法
import requests
# 1.请求网络数据:requests.get(请求地址)
response = requests.get('https://game.gtimg.cn/images/lol/act/img/js/heroList/hero_list.js')
# 2.设置解码方式(乱码的时候需要设置 —— 一定要在获取请求结果之前设置)
response.encoding = 'utf-8' # 找meta标签里面的charset的属性值,将这个属性值赋给encoding
# 3.获取请求结果
# 1)获取请求结果对应的文本数据 —— 爬网页
print(response.text)
# 2)获取二进制格式的请求结果 —— 下载图片、视频、音频
print(response.content)
# 3)获取请求结果json转换的结果 —— json接口
print(response.json())
二、添加请求头
import requests
# 1.发生请求
# 添加header:a.浏览器伪装(user-agent)、b.免密登录(cookie)、c.设置代理(proxies)
headers = {
'cookie': 'BIDUPSID=A680D8CEFEAC65307965AEEFA7386849; PSTM=1677116640; BAIDUID=A680D8CEFEAC6530CC088914CFB657B3:FG=1; BD_UPN=12314753; BAIDUID_BFESS=A680D8CEFEAC6530CC088914CFB657B3:FG=1; ZFY=vaDaTi368yipgGZpVQL00KrnlEz88JWZ20zpNYGQVtI:C; COOKIE_SESSION=403843_1_4_7_3_6_1_0_3_5_2_0_403842_0_4_0_1679110087_1678182048_1679110083%7C7%230_1_1678182042%7C1; channel=chdb.s.3jdh.com; __bid_n=1870eeee282c21eba74207; FPTOKEN=4+MpAYwzZnRqgzjxYNT0wbLcN0FjxfEfFnUlkJWXqyZtczFiDKJ0FxsNExLcE9Cpyiw/SzLS9xWcLiCpFeXd5HZ+Sbta4AwRaWkwe2hvpdbS8HgcT67wnaS5uyUf0wyk3h5LtG5idaJxa1cnlcttmtX7qFsOS9iU/P3QpqP/haHj1bQvLTjpqvqhDHYHU6CRNZT63r0gAch/p61KQbClHaGTYdM+L4HcMxfj1AEgI4cz61fgJwFtuSY0ijK1lpO1nM5f6fLxn3tQz+1wfARxIQ86Vb43lw6yi3AX8sgxJLEIC+8+xQtH+3yZcBqQOMURZYcprAEQfdfCr+ytxMHyGoYGHHgatbhWOSbtqAIWKko45z6WDTCmChXZsYVp41BkSOIan5UbXCDwnO0jmVICBg==|kXj3FDr48e1/ID2yF1sMI09I3hp//yzUWBBKMcHnctk=|10|159a962b16701ba8d05dac30b2e0613c; BDRCVFR[PgFsD-oVCXs]=Sgq2UtKbV53nvGbpa4WUvY; delPer=0; BD_CK_SAM=1; PSINO=7; H_PS_PSSID=26350; BA_HECTOR=0h8h04ala005a08g802h24f21i22gla1n; BDORZ=FFFB88E999055A3F8A630C64834BD6D0; baikeVisitId=96d6d66c-40fa-4df5-9050-b5dd62676860; B64_BOT=1; ab_sr=1.0.1_NmRlMWExYTJmMDgxMTk3NmQ3MGMyMTA0N2I0M2ZkMmViZThhNWYzNGE2MmQ4NDYwYmY4YzE5YzYyMGZlZjJkMmZkY2Y3OWZlZGI3MjVlZmQxODY4ZWFiNTVkYTg1ZjExN2I0MmRlNGVmZWM0MDFlYzcyOGU3YWIyZTAzMmE2ZmZhNzdlNzczMDFlNGFkZjVhNTkxYjlkOWYxOTQ2ZjE1Nw==; H_PS_645EC=53dc0TItHpWat2m269u0gLvvlXcIkQKUs9AgCcryoRf2fMxOithlPnm1eJMXHPDZ5EuPZGND2L5b; BD_HOME=1',
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36'
}
response = requests.get('https://movie.douban.com/top250', headers=headers)
# 2.获取结果
result = response.text
print(result)
三、下载图片
import requests
# 1.获取网络图片数据
response = requests.get('https://img1.baidu.com/it/u=4256555577,2837194795&fm=253&fmt=auto&app=120&f=JPEG?w=1280&h=800')
result = response.content
# 2.保存数据到本地文件
with open('files/a.jpg', 'wb') as f:
f.write(result)