先叠加:本人只是了解,如果错误欢迎指出。
为什么不发csdn
因为全是ai水文章和卖课的,找了半天一个有用的都没有,所以我也不想发。
像极了我水论文的样子
前言:craw4介绍
异步爬虫,可将爬取的网页转换为markdown、清理过的html语言、json语言。相比requests来说提取的网页能直观看懂。文档:https://crawl4ai.com/mkdocs/
学习推荐网站:https://www.studywithgpt.com/zh-cn/tutorial/ynms80
特点(我自己总结的)
可以基于css选择器爬取指定部分
在爬取数据前可以预先执行js代码
爬取重复界面缓存功能
使用简单,如下图
代码
结果
正文:
目的:爬取页面数据,返回json格式数据。(爬取萌娘百科对应的galgame信息)
步骤:
利用crawl4ai库爬取页面数据markdown格式数据
利用通义大模型解析markdown格式数据
pydantic验证数据格式
输出json格式数据
crawl4ai爬取markdown格式数据
headers和代理设置也很简单。只需要在 verbose后加headers=..就可以
css选取了所有段落p,还有一个主要角色列表。这两个基本就能包括所有的想要的信息
通义大模型处理
大模型网站:https://bailian.console.aliyun.com/
在对应的应用用人话写出你想要的东西,然后进行优化。
具体大模型调用方法查看网站示例(很简单)。
大模型返回有时会有额外内容,如提取后的json文本如下,```json 内容```,用正则过滤一下json就好,这能保证返回的data,一定是json格式
pydantic数据校验
大模型返回json格式一般来说不会出错,在prompt里明确指出返回json格式包括哪些字段,没有返回空。
如果后续要处理内容,为了数据符合格式可以加校验。
目标格式如下,后面None表示允许空
格式
校验很简单,只需要try: OpenAIModelFee(**data) ,不符合格式会抛出异常。
最后,代码输出结果
输出结果
代码:https://wwkt.lanzoul.com/iyV4f2irlxgd
其他
原本crawl4有用openai直接进行处理,看起来好像不需要自己进行数据验证,只需要把提问词加上就行,然后能直接爬取。看起来很方便,但是我的不知道为什么报错,到现在也没解决。"content": "No module named 'openai.types'; 'openai' is not a package" 好像与环境有关,但不知道怎么解决
小黑盒什么时候能支持代码块呢....