TS4:认证的真相

烦恼的认证

  • 花花世界,数据繁多,小白们看到心水数据,往往相恨太晚不能自持,总希望能把这些可爱的数据搬回家.
  • 直觉上,抓取数据不外乎三步,打开冰箱(输入),放进大象(处理),关上冰箱(输出).
  • 小白却发现,打开冰箱的第一步已经需要学习大量知识点,比如,怎么认证登录?

明确团队希望掌握,模拟网站登录的功能区网页直接抓取数据,但需要学习的知识点太多...

经大妈提醒,可以通过 API 抓取.但因为第一次接触 API,资料中很多专有名词和概念,都要转去补充阅读资料才理解,进展很慢...

认证的真相

  • 以 gitlab 为例,抓取数据的一种流行方法为,从 gitlab api 获取数据.
  • 可以通过各式各样工具,向 gitlab 提出请求,比如 curl,requests,GraphQL 等.
  • gitlab 给出的示例代码如下,但小白们大呼看不懂!不好用!
    curl --header "Private-Token: <your_access_token>" \
        https://gitlab.example.com/api/v4/projects
  • 其实核心问题在于,示例代码并不是直接就能上手用的.
  • 类似这种示例,如何最终结合到 Python 代码中? 这才是小白们自己该动手的地方.
  • 那么, 这里就涉及到一系列有严密逻辑关系的问题:
  • curl?
    • 是什么?
    • 如何安装?
    • 如何使用?
  • gitlab.example.com
    • 为什么不存在?
    • 应该是什么?
    • 为什么?
  • --header "Private-Token: "
    • --header 是什么意思?
    • "Private-Token: " 怎么理解?
    • your_access_token 从哪儿获取?
    • 整个儿真实使用时, 应该长什么样?
      • <your_access_token> 这儿的尖括号要保留嘛?
      • 为什么? 这是什么格式?...
  • curl 示例 Python 的行为以及代码实现?

    • 什么是 http ?
    • 什么是 header ?
    • Python 中有什么网络请求模块?
      • 哪个最好?
      • 如何安装
      • 基本使用?
      • ...
  • 那么, 如果无法自动分析并规划出这种探索路径,当然真相永远无法抵达...

不可遗忘的隐藏

  • 当理解了认证后,更加重要的来了.
  • 代码中 涉及个人隐私和信息安全的情况.
  • 软件工程师习惯将一个软件运行起来需要的参数放在INI格式的配置文件里.
  • 通过 python 模块调用配置文件里的参数.
  • 所以特别提醒正在认证的小白们, 一定要保护好自己的隐私.
  • 同时,务必在README或文档醒目位置告知最终用户配置文件的预期位置和名称,否则参数不对软件甚至无法运行.

结语

  • 这就是蟒营对小白们的挑战,给小白们提供的并不只是知识/技能/常识,更多的是逻辑的挑战...

refer




自怼圈/年度番新

DU22.8
关于 ~ DebugUself with DAMA ;-)
点击注册~> 获得 100$ 体验券: DigitalOcean Referral Badge

订阅 substack 体验古早写作:


关注公众号, 持续获得相关各种嗯哼:
zoomquiet


蟒营®编程思维提高班Python版

**2021.01.11** 因大妈再次创业暂停定期开设, 转换为预约触发:
  • + 扫描预约入群, 学员每满 42 人即启动新一期训练营 ;-)
  • 101camp22.7
  • + 任何问题, 随时邮件提问可也:
    askdama@googlegroups.com