我花 1 分钟写了一段爬虫,帮助小姐姐解放了双手

发表于:2020-4-08 09:40

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:星安果    来源:AirPython

#
Python
分享:
  1. 场景
  最近有一位小姐姐向我抱怨,说她家宝宝最近要打预防针,受疫情影响,市区定点的社康医院太少,导致预约号基本靠抢,根本是一号难求
  每次预约都要一直守在手机旁,不停地刷新页面去抢号,太耽误功夫了,问我有没有办法帮到她?
  我分析了一下,功能入口是在微信服务号内部,如果使用 自动化 去抢号,效率会很低,抢号成功率会大减。
  因此,我决定花 1 分钟,用 Python 写一段爬虫!
  2. 实现步骤
  首先,我们在手机端配置手动代理,打开 Charles 或 FD,打开手机的放号界面,进行一次抓包操作
  分析界面发出的请求及响应数据,右键复制 cURL 到剪切板
  然后,使用下面这个网址将 cURL 转为一段完整的 Python 请求代码,包含:请求头、Cookies 等
  https://curl.trillworks.com/
  接着,将代码复制到 Pycharm 中,根据第一步抓包获取的数据结构,遍历数据,找出有余号、并且最近的社康医院
   result = json.loads(response.text)
  ym_datas = result.get('data').get('list')
  foo = False
  # 遍历每一个社康
  for ym_item in ym_datas:
  # 地址
  address = ym_item.get('outpAddress')
  # 社康名字
  ym_name = ym_item.get('outpName')
  # 状态,是否有号
  status = ym_item.get('status')
  if status == '1' and ym_name in choices:
  foo = True
  break
  else:
  pass
  最后,一旦发现有指定的社康医院有号放出,立马发出一个 警告语音提醒
   # 发出预警(Mac)
  def raise_alarm(voice):
  """
  发出警报(Mac)
  :param voice:
  :return:
  """
  os.system('say %s' % voice)
  # 发出预警(PC)
  def raise_alarm(voice):
  """
  发出警报(PC)
  :param voice:
  :return:
  """
  import winsound
  winsound.Beep(500, 1000)
  3. 最后
  通过上面几步操作,相信不需要 1 分钟,就能写出一段爬虫,帮助小姐姐解决抢号难的问题。
  如果你觉得文章还不错,请大家点赞分享下。你的肯定是我最大的鼓励和支持。

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号