首页 > 编程语言 >基于node.js的医院挂号页面爬虫

基于node.js的医院挂号页面爬虫

时间:2024-07-09 18:54:40浏览次数:11  
标签:node 爬虫 捡漏 js 医院 挂号 接口 放号 页面

背景

TM的牙疼,想挂一个九院的专家,拔个牙。结果每天早起抢号都没抢到过。于是乎,就想通过捡漏的办法,24小时不间断请求医院挂号页面,看有没有专家放号。一旦检测到放号,就立即发邮件,发短信通知我。我立刻去挂号。(之所以没开发自动挂号功能,一是担心我身份证被医院拉黑,二是可能涉及到敏感问题会被叫去喝茶)

实现

想法一

找到医院挂号页面,直接f12抓接口,分析接口获取到可预约医生名单
image
image

结论

失败。原因如下:
1、每个接口都做了签名校验,根本无法知道签名生成规则
2、请求参数全部加密了,无法知道私钥

想法二

调用第三方库,模拟人打开页面。获取到所有的dom元素,然后分析dom元素,获取到可预约医生名单

结论

成功!!!
详细代码不便透露,但是可给一个参考仓库。我是基于这个仓库实现的。仓库地址:https://github.com/qinyuanqiblog/house.git

按README.md下载依赖运行即可,如觉得安装mysql麻烦,可以把mysql部分全部注释掉。对于捡漏挂号这个项目来说,无需用到数据库。

标签:node,爬虫,捡漏,js,医院,挂号,接口,放号,页面
From: https://www.cnblogs.com/never404/p/18292563

相关文章

  • Java爬虫翻页
    编写一个Java爬虫以进行翻页通常涉及到使用HTTP客户端(如ApacheHttpClient或OkHttp)来发送请求,解析HTML页面(如使用Jsoup库),以及处理分页逻辑(如通过URL参数或页面内的链接进行翻页)。1.使用Jsoup和ApacheHttpClient的Java爬虫示例以下是一个使用Jsoup和ApacheHttpClient的Java爬......
  • NodeJS蔬菜自产零售混合销售平台-计算机毕业设计源码10149
    摘 要随着移动互联网的快速发展,购物方式也发生了巨大的变化。蔬菜作为消费者生活中必不可少的商品之一,在移动互联网时代也迎来了新的购物方式——购物小程序。购物小程序是一种基于手机应用平台的轻量级应用程序,用户可以通过它方便地浏览、选择和购买蔬菜。本文介绍了一个......
  • ESM(ESModule)和CJS(CommonJS)的区别
    ESM和CJS的区别1.CJS2.EMS3ESM与CJS的区别3.1ESM输出的是==值的引用==,CJS输出的是==值得拷贝==3.2CJS的输出是运行时加载,而ESM是编译时输出接口3.3CJS是同步加载,ESM是异步加载1.CJSNode.js模块加载规范.js或.cjs文件,使用require加载,module.exports/exports......
  • ASP.Net Core解读launchSettings.json
    一、环境目标框架:.NETCore3.1ASP.NETCore是一个全新的Web开发平台,微软在它上面构建了MVC、SingalR、GRPC、Orleans这样广泛使用的Web框架,我们先以MVC框架为例介绍利用ASP.NETCore构建项目的常见名词。这篇文章介绍启动配置文件launchSettings.json ASP.NET Core MVC项目......
  • Vue3 pdf.js将二进制文件流转成pdf预览
    好久没写东西,19年之前写过一篇Vue2将pdf二进制文件流转换成pdf文件,如果Vue2换成Vue3了,顺带来一篇文章,pdf.js这个东西用来解决内网pdf预览,是个不错的选择。首先去pdfjs官网,下载需要的文件然后将下载的东西放到public文件下接下来看一下代码<auto-dialogtitle="PDF预......
  • 爬虫 - 网页解析库
    BeautifulSoupBeautifulSoup是一个Python库,用于从HTML提取数据它提供了简单而灵活的方式来遍历和搜索文档树,以及解析和提取所需的数据安装BeautifulSoup的安装涉及第三方的扩展pip3installbeautifulsoup4BeautifulSoup支持Python标准库中的HTML解析器,还支持一些第三......
  • JS随手记录第一天
    JavaScript是Web的编程语言。所有现代的HTML页面都可以使用JavaScript。1.为什么学习JavaScript?JavaScript是web开发人员必须学习的3门语言中的一门:HTML定义了网页的内容CSS描述了网页的布局JavaScript控制了网页的行为JavaScript学习的过程中一起复习之......
  • nuxtjs 2.x.x坑点总结
    1、缩放适配参考:https://blog.csdn.net/weixin_44599931/article/details/136539941坑点:不要用postcss-px2rem,会和nuxt引入公共css冲突,改用postcss-pxtorem可解决2、axios使用坑点:不要配置axios的headers,会导致源代码中seo失效,以及刷新页面后axios请求直接失效3、多环境变......
  • js浅拷贝与深拷贝的区别和实现方式
           ......
  • Shell处理JSON命令行-jq
    jq是一个命令行工具,专门用来处理和转换JSON数据。官网:https://github.com/jqlang/jq安装aptinstalljq基本用法JSON示例文件file.json[{"name":"Alice","age":30},{"name":"Bob","age":35}]#格式化输出jq'.'......