python知识点记录

本文详细介绍了Python网络请求的GET和POST方法,HTTP请求格式,反爬机制中的UA、Cookie和Referer,以及使用requests库进行get和post请求。还涵盖了正则表达式、Cookie处理、JSON格式化、滑动验证、数据写入文件、多线程和线程池等爬虫相关知识。
摘要由CSDN通过智能技术生成

目录

1、get和post是两个不同的请求体,get直接简单,但不安全,post有一层包装,更安全。

2、一个测试服务器实例代码:

3、HTTP请求格式:

4、反爬机制三要素:UA,cookie,referer

5、json格式化快捷方式

6、referer反爬

7、Pycharm快捷方式:

8、Cookie反爬,这里是指静态Cookie,动态的爬不了

9、get请求参数

10、post请求体

11、爬图片和视频

12、m3u8网页视频爬取方法

13、滑动验证工具

14、cmd退出命令:exit()

15、动行记事本,py的文件方法:

16、浏览器分析,network就是浏览器的一个抓包工具

17、requests发送get请求:

18、resquests发送post请求:

19、测验爬取肯德基餐厅位置信息

20、正则表达式-上

21、正则表达式下:

22、正则表达式实例 -爬虫中经常用到的正则表达式

23、查看python的请求头

​编辑

24、re.S 可以让re匹配到换行符 

25、去掉空格、换行符、制表符

26、正则表达式使用方法,resp.encoding = 'utf-8'

27、将数据写入文件。2023.12.05

28、python中的url循环,for循环 

29、etree的两种导入方法

30、多线程

​编辑

31、线程池 

32、生成器可以用列表来循环

33、找到包含xxx的字符串文本,需要导入正则,还有beautifulsoup4。

34、 读取本地html文件方法:

35、将转换成字符串方法,xpath中,使用tostring将节点对象转换为标签。

36、xpath中获取标签中的文本内容:

37、Copy浏览器中的xpath,需要注意坑。

38、 编码解码:

39、自动识别编码: 

40、同时得到字典的键和值:


1、get和post是两个不同的请求体,get直接简单,但不安全,post有一层包装,更安全。

get请求,没有请求体,POST请求有请求体。

2、一个测试服务器实例代码:

import socket

sock =socket.socket()
sock.bind(("127.0.0.1",8080))
sock.listen(5)

while 1:
    conn,addr = sock.accept()
    data = conn.recv(1024)
    print('data:::',data)
    conn.send(b'HTTPS/1.1 200 OK\r\n\r\n1111')

在浏览器里面输入:127.0.0.1:8080即可访问,并返回:1111.

3、HTTP请求格式:

4、反爬机制三要素:UA,cookie,referer

5、json格式化快捷方式

6、referer反爬

import requests

my_headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.125 Safari/537.36",
    'Referer': 'https://movie.douban.com/explore'
}

url = 'https://m.douban.com/rexxar/api/v2/movie/recommend?refresh=0&start=0&count=20&selected_categories=%7B%22%E7%B1%BB%E5%9E%8B%22:%22%E7%8A%AF%E7%BD%AA%22%7D&uncollect=false&tags=%E7%8A%AF%E7%BD%AA'

res = requests.get(url,headers=my_headers)

print(res.text)

7、Pycharm快捷方式:

ctrl+/ 注释代码 

8、Cookie反爬,这里是指静态Cookie,动态的爬不了

import requests

url = "https://stock.xueqiu.com/v5/stock/screener/quote/list.json?type=sha&order_by=percent&order=desc&size=10&page=1"

my_headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.125 Safari/537.36",
    'Referer': 'https://xueqiu.com/hq',
    "Cookie": "s=ce1691zr64; xq_a_token=cf755d099237875c767cae1769959cee5a1fb37c; xq_r_token=e073320f4256c0234a620b59c446e458455626d9; xq_id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTcwMTk5NTg4MCwiY3RtIjoxNzAwNDgyODU2MTUwLCJjaWQiOiJkOWQwbjRBWnVwIn0.ahoNtkL30exAv-5UuI6_lC0iGfIhaH70FLFI1Z9A8TlVG3dXxDPHnT43IJo36pwmd6s9kGAIHlz7IU-f1bWQ5czH6W77as69qG6OThYTUVatXS0bvBVBVS-uzMSmXWvweqSPjFKAJHaHQH38F8SfjssNYXbEyGwXp2XfdieueRrgZVdjPwZ-sgczrolrJg-K-3XYa87gtcLzmM9vl5_8aKfsyUt5XTiSFADNQe-31aj8lm-ciiYHqabPsS19y8Gv9k2UMknYCEwaZlwc4_HUxU4BNgIqk1CU3cVVykeom5V3ggQ-W10OCzUkArX-fp26VjctK0cvKJNHDQF7_DnGVA; cookiesu=771700482860303; u=771700482860303; device_id=5196ccf1e7f4009737785bc93860f84e; Hm_lvt_1db88642e346389874251b5a1eded6e3=1700482887; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1700482936"
}
res = requests.get(url,headers=my_headers)

print(res.text)

9、get请求参数

import requests

my_headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.125 Safari/537.36",
    'Referer': 'https://movie.douban.com/explore'
}

url = 'https://m.douban.com/rexxar/api/v2/movie/recommend'

tags = input('请输入电影类型:'),
print(tags)

my_params = {
    'start': 0,
    'count': 60,
    'tags': tags
}

res = requests.get(url,headers=my_headers,params=my_params)
# params是get请求参数
# print(res.text)
print(res.json())

10、post请求体

import requests

rul = 'https://aidemo.youdao.com/trans'
# 有道智云网站
word = input('请输入要翻译的单词:')

my_data = {
    'q': word,
    'from': 'Auto',
    'to': 'Auto'
}

res = requests.post(rul,data=my_data)
# data是POST的请求体
print(res.json().get('translation'))

11、爬图片和视频

import requests

url = 'http://img.netbian.com/file/2023/1113/224050jZgYd.jpg'

my_headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.125 Safari/537.36",
}

res = requests.get(url,headers=my_headers)

print(res.content)

with open('1.png','wb') as f:
    f.write(res.content)
    # 这里需要注意:1.b换成wb  2.res.test换成res.content。  视频也一样。

12、m3u8网页视频爬取方法

13、滑动验证工具

14、cmd退出命令:exit()

15、动行记事本,py的文件方法:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值