import re
text ='''
{
"code": 200,
"message": "success",
"traceId": "da0b668c-4d67-44bf-907f-c072fc63839a",
"data": {
"list": [
{
"articleId": 121862102,
"title": "python 目录",
"description": "python基础\tprint()https://blog.csdn.net/qq_26086231/article/details/108681045\t\t\tinput()https://blog.csdn.net/qq_26086231/article/details/108681143\t文件处理表格处理request请求",
"url": "https://ohoneyesee.blog.csdn.net/article/details/121862102",
"type": 1,
"top": true,
"forcePlan": false,
"viewCount": 401,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/121862102",
"postTime": "2021-12-10 17:58:29",
"diggCount": 0,
"formatTime": "2021.12.10",
"picList": [],
"collectCount": 0
},
{
"articleId": 121297308,
"title": "留言板",
"description": "回复留言python,测试之类的问题,能解决会尝试回复;;;;",
"url": "https://ohoneyesee.blog.csdn.net/article/details/121297308",
"type": 1,
"top": true,
"forcePlan": false,
"viewCount": 674,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/121297308",
"postTime": "2021-11-12 22:23:54",
"diggCount": 0,
"formatTime": "2021.11.12",
"picList": [],
"collectCount": 0
},
{
"articleId": 115657032,
"title": "实用类网站软件地址收集",
"description": "Everything基于名称快速定位文件和文件夹。https://www.voidtools.com/zh-cn/",
"url": "https://ohoneyesee.blog.csdn.net/article/details/115657032",
"type": 1,
"top": true,
"forcePlan": false,
"viewCount": 654,
"commentCount": 0,
"editUrl": "https://editor.csdn.net/md?articleId=115657032",
"postTime": "2021-04-13 10:45:17",
"diggCount": 0,
"formatTime": "2021.04.13",
"picList": [],
"collectCount": 3
},
{
"articleId": 108549963,
"title": "学习记录:oracle数据库练习指引",
"description": "练习建表一",
"url": "https://ohoneyesee.blog.csdn.net/article/details/108549963",
"type": 1,
"top": true,
"forcePlan": false,
"viewCount": 119,
"commentCount": 0,
"editUrl": "https://editor.csdn.net/md?articleId=108549963",
"postTime": "2020-09-12 15:12:43",
"diggCount": 0,
"formatTime": "2020.09.12",
"picList": [],
"collectCount": 0
},
{
"articleId": 134065978,
"title": "python re 使用非捕获组来忽略第一个value的匹配结果",
"description": "正则表达式匹配",
"url": "https://ohoneyesee.blog.csdn.net/article/details/134065978",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 1,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/134065978",
"postTime": "2023-10-26 22:16:05",
"diggCount": 0,
"formatTime": "20 分钟前",
"picList": [],
"collectCount": 0
},
{
"articleId": 134021203,
"title": "Flask 上传文件,requests通过接口上传文件",
"description": "【代码】Flask 上传文件,requests通过接口上传文件。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/134021203",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 185,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/134021203",
"postTime": "2023-10-24 20:40:48",
"diggCount": 0,
"formatTime": "前天 20:40",
"picList": [],
"collectCount": 0
},
{
"articleId": 133914813,
"title": "python tk展示图片",
"description": "【代码】python tk展示图片。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/133914813",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 106,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/133914813",
"postTime": "2023-10-18 21:07:50",
"diggCount": 0,
"formatTime": "2023.10.18",
"picList": [],
"collectCount": 1
},
{
"articleId": 133874504,
"title": "python 图片下面加边框TK界面",
"description": "【代码】python 图片下面加边框TK界面。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/133874504",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 128,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/133874504",
"postTime": "2023-10-17 00:13:11",
"diggCount": 0,
"formatTime": "2023.10.17",
"picList": [],
"collectCount": 0
},
{
"articleId": 133824670,
"title": "python 对图片增加边框,logo贴图,获取图片exif参数,填写图片文本内容",
"description": "【代码】python 处理图片增加边框参数",
"url": "https://ohoneyesee.blog.csdn.net/article/details/133824670",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 238,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/133824670",
"postTime": "2023-10-14 14:06:26",
"diggCount": 0,
"formatTime": "2023.10.14",
"picList": [],
"collectCount": 1
},
{
"articleId": 133713782,
"title": "python curl2pyreqs 生成接口脚本",
"description": "打开cmd窗口,输入curl2pyreqs,会自动生成接口代码。打开调试模式,在Network这里获取 接口的cURL。下载 curl2pyreqs 库。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/133713782",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 66,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/133713782",
"postTime": "2023-10-09 19:59:20",
"diggCount": 0,
"formatTime": "2023.10.09",
"picList": [],
"collectCount": 0
},
{
"articleId": 132766853,
"title": "学习记录: requests 不同请求方式传参和常用的方法",
"description": "requests 不同类型的传参和常用的方法",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132766853",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 445,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132766853",
"postTime": "2023-09-08 20:11:04",
"diggCount": 0,
"formatTime": "2023.09.08",
"picList": [],
"collectCount": 0
},
{
"articleId": 132764068,
"title": "flask bootstrap页面json格式化",
"description": "【代码】flask bootstrap页面json格式化",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132764068",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 314,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132764068",
"postTime": "2023-09-08 17:04:11",
"diggCount": 0,
"formatTime": "2023.09.08",
"picList": [],
"collectCount": 0
},
{
"articleId": 132701379,
"title": "bootstrap 导航栏下拉菜单,居右下拉菜单",
"description": "【代码】bootstrap 导航栏下拉菜单,居右下拉菜单。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132701379",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 151,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132701379",
"postTime": "2023-09-05 22:04:54",
"diggCount": 0,
"formatTime": "2023.09.05",
"picList": [],
"collectCount": 0
},
{
"articleId": 132642932,
"title": "pytest parametrize多参数接口请求及展示中文响应数据",
"description": "pytest parametrize多参数接口请求及展示中文响应数据",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132642932",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 731,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132642932",
"postTime": "2023-09-02 21:31:35",
"diggCount": 0,
"formatTime": "2023.09.02",
"picList": [],
"collectCount": 0
},
{
"articleId": 132610917,
"title": "提高代码可读性和可维护性的命名建议",
"description": "这些命名建议可以作为参考,但请根据你的具体项目和团队的约定进行适当调整。保持一致的命名风格和清晰的命名可以使你的代码更易于理解和维护。当进行接口自动化测试时,良好的命名可以提高代码的可读性和可维护性。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132610917",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 71,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132610917",
"postTime": "2023-08-31 20:22:56",
"diggCount": 0,
"formatTime": "2023.08.31",
"picList": [],
"collectCount": 0
},
{
"articleId": 132610757,
"title": "使用 Python 的 requests 库进行登录和会话管理",
"description": "Cookie 的自动处理:Session 对象自动处理 Cookie,它会在每个请求中自动发送之前接收到的 Cookie,并在接收到新的 Cookie 时更新存储的 Cookie。这意味着在同一个 Session 对象中发送的多个请求之间共享状态,例如登录信息、会话令牌等。连接的重用:Session 对象会在多个请求之间重用底层的 TCP 连接,从而提高请求的效率。通过使用 Session 对象,你可以方便地管理会话状态,避免了在每个请求中手动处理 Cookie 和状态信息的繁琐操作。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132610757",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 153,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132610757",
"postTime": "2023-08-31 20:13:23",
"diggCount": 0,
"formatTime": "2023.08.31",
"picList": [],
"collectCount": 0
},
{
"articleId": 132523990,
"title": "pytest fixture夹具,@pytest.fixture",
"description": "fixture的作用范围:session>module>class>function。(scop=\"session\") 是多个文件调用一次,.py文件就是module。(scop=\"function\") 每一个函数或方法都会调用。(scop=\"module\") 每一个.py文件调用一次。(scop=\"class\") 每一个类调用一次。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132523990",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 1214,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132523990",
"postTime": "2023-08-27 15:31:05",
"diggCount": 0,
"formatTime": "2023.08.27",
"picList": [],
"collectCount": 0
},
{
"articleId": 132514039,
"title": "pytest pytest.ini 配置日志输出至文件",
"description": "创建pytest.ini 文件。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132514039",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 971,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132514039",
"postTime": "2023-08-26 17:36:21",
"diggCount": 0,
"formatTime": "2023.08.26",
"picList": [],
"collectCount": 0
},
{
"articleId": 132503163,
"title": "pytest fixture 创建一个 requests.session() 对象",
"description": "它使用 `pytest.main()` 函数来运行测试文件,并通过 `['-v', 'test_crm.py']` 参数指定了运行的选项。通过使用 `pytest` 和 `requests` 库,这段代码提供了一个简单的框架来执行接口自动化测试。3. 在 `session` 夹具函数中,创建一个 `requests.session()` 对象,这是一个会话级别的对象,可以在多个请求之间保持会话状态。`yield` 之前的代码在测试会话开始时执行,`yield` 之后的代码在测试会话结束时执行。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132503163",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 900,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132503163",
"postTime": "2023-08-25 21:14:14",
"diggCount": 0,
"formatTime": "2023.08.25",
"picList": [],
"collectCount": 0
},
{
"articleId": 132484098,
"title": "python 无网络安装库的方法",
"description": "你可以使用打包工具将已安装的库及其依赖项打包为一个可执行文件或安装包,然后将其传输给目标电脑。这样,目标电脑上就可以直接运行可执行文件或安装包来安装所需的库。将这些库文件复制到目标电脑的相同位置。请注意,这种方法仅适用于纯Python库,对于依赖于C扩展或其他系统依赖项的库可能无法正常工作。),你可以将整个项目目录(包括依赖项和虚拟环境)复制到目标电脑上。然后在目标电脑上激活虚拟环境,并运行你的代码。在你的电脑上找到已安装库的文件,通常位于Python的Lib\\。如果你的项目使用了依赖管理工具(如。",
"url": "https://ohoneyesee.blog.csdn.net/article/details/132484098",
"type": 1,
"top": false,
"forcePlan": false,
"viewCount": 230,
"commentCount": 0,
"editUrl": "https://mp.csdn.net/console/editor/html/132484098",
"postTime": "2023-08-24 22:46:10",
"diggCount": 0,
"formatTime": "2023.08.24",
"picList": [],
"collectCount": 0
}
],
"total": 737
}
}
'''
pattern = r'"title":\s*"([^"]*)"'
matches = re.findall(pattern, text)
print(matches)