当前位置: 首页 > article >正文

尚硅谷爬虫note003

一、函数

1. 函数的定义

        def 函数名():

                代码

2.函数的调用

        函数名()

3. 定义参数(不调用函数不执行)

       

def sum(a,b)    #形参
c = a + b
print(c)

#调用
sum(1,2)    #实参

4. 函数返回值——》结果

        需要变量,接收函数返回值

def buyClothes():
return “短袖”

clothes = buyclothes()    #clothes变量,用来接收函数返回值
print(clothes)

二、文件

1. 打开/创建文件

        open(”文件路径”,“访问模式“)

        不能创建文件夹

2. 关闭文件

        fp.close()

3. 文件的读写

        是覆盖操作

若需追加,使用“a”模式进行访问

读:

        content = fp.read()

        print(content)

一般情况下:

        一个字节一个字节的读取

readline()方法:一行一行的读取,但是只能读一行

readlines()方法:读取多行,按列表格式返回

三、序列化、反序列化

1. 序列化:一套协议

        按某种规则,把内存中的数据转为字节序列

        python对象——》字节序列

2. 反序列化:

        从文件字节序列恢复到内存中

        字节序列——》python对象

无法将对象写入文件中。

        进行序列化操作后,可写入

3. 序列化的2种方式

3-1. dumps()

        1).创建一个文件

fp = open(“xx.txt”,“w”)

        2).定义一个列表

xx_list = 【“zs”,“ls”】

        3)导入json到文件中

import json

        4)序列化

        将python对象转为json字符串

content = json.dumps(xx_list)

print(content)

        5)将content写入文件中

fp.write(content)

fp.close()

3-2. dump()

        将python对象转为字符串的同时,指定一个文件对象,把转换后的字符串写入到指定的文件中

3-1中1),2),3)——》

json.dump(xx_list,fp)

fp.close()

4. 反序列化的2种方式

        将json字符串转成python对象

fp = open(“xx.txt”,“r”)

content = fp.read()

print(content)

4-1. loads()

1)导入json

        import json

2)将json字符串转成python对象

        xx = json.loads(content)

3)转换后的打印

        print(xx)

4-2. load()

        fp = open(“xx.txt”,“r”)

import json

xx = json.load(fp)

print(xx)

fp.close()

四、异常

try:

        可能出现异常的代码

except 异常类型:

        友好的提示

try:
    fp = open("111.txt","r")
    fp.read()
except  FileNotFoundError:
    print("系统升级中...")

五、反扒手段

        1. user-agent

        2. 代理IP

        3. 验证码访问

        4. 动态加载网页

        5. 数据加密


http://www.kler.cn/a/547050.html

相关文章:

  • 微软AutoGen介绍——Managing State保存并加载持续会话的Agents和Teams
  • ML.NET库学习006:成人人口普查数据分析与分类预测
  • 第十一篇:EMC的“电磁护盾”——三电系统干扰抑制实战
  • uniapp中对于文件和文件夹的处理,内存的查询
  • 132,【1】 buuctf web [EIS 2019]EzPOP
  • Scrapy:任务队列底层设计详解
  • Unity 接入Tripo API 文生模型,模型制作动画并下载使用
  • 提供可传递的易受攻击的依赖项
  • 最新国内 ChatGPT Plus/Pro 获取教程
  • 【STM32】舵机SG90
  • 使用Java爬虫获取京东JD.item_sku API接口数据
  • 【Jenkins流水线搭建】
  • LLaMA-Factory 安装linux部署使用conda笔记
  • 安科瑞 EMS3.0:赋能企业能效管理,开启智慧能源新时代
  • TIP2022 | DRA | 从分布的角度理解和提升对抗性迁移性
  • 词袋模型和词嵌入模型区别和关联分析(词袋模型是否属于词嵌入模型)
  • 强化学习-DDPG
  • 希尔排序(C#)
  • MySQL 支持的事务隔离级别
  • 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,其各自的优势