Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
K
kb
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • granite
  • kb
  • Wiki
    • Code review
  • ic_info_change

Last edited by wangpj Nov 25, 2021
Page history
This is an old version of this page. You can view the most recent version or browse the history.

ic_info_change

评审目标

1. 实现方案的正确性
2. 代码的坏味道
3. 规范性

评审日期

2021-11-25

评审人

王鹏举、袁波

被评审人

杨龙斌

参考链接

代码入口:
http://tech.pingansec.com/granite/project-ic-spiders/-/blob/dev_ic_pc_py3/scrapy_spiders/gravel_spiders/spiders/ic_pc.py

请求流程:
http://tech.pingansec.com/granite/project-ic-spiders/-/blob/dev_ic_pc_py3/app_ic_pc/doc/zongju_requests.md

流程

1. 被评审人需先整体描述需要解决的问题、解决流程 (被评审人讲解过程中,评审人可以记录问题,不要打断被评审者的思路)
2. 被评审人讲完,评审人和与会人员可以提问题
3. 评审人进行评审 (被评审者或者与会人员记录评审待改进的内容,有时并不是只针对被评审者,而是所有编码者)
4. 评审完成之后,落实待修改项,主要是缺陷和规范性

值得学习的地方

1. 代码层次比较分明、每个方法具体做什么,比较清楚。
2. 每个文件代码没有超过150行,每个方法代码量也没有过于冗长。
3. start_requestss直接留了一个测试入口,处理方便。

代码的坏味道

1. 必要注释

   a、ChangeRequest请求,我以为是某一个维度,实际上是获取请求需要的一个关键参数
   
2、命名
   a、ic_pc.py format_task_params  全是task_params
   b、ic_pc.py init_task_result_mgr mgr可以写成manager, 两个Task为什么不连在一起写?
   
  
3、存在疑问
   a、index.py文件  yield from、return、yield   
   b、太多if else 判断就显得代码特别乱, 是否可以抽取出方法处理。
   c、detail_url.py parse_response方法, 2个yield,1个return
   
4. 不足

   a、is_need_retry,方法整体上应该有一个返回
   
   b、items.py文件接近1000行代码了。
   
   c、single_request.py parse_response 响应正常,抽取成一个方法。 new_request里面可以抽取成2~3个方法
   
   d、添加readme.md,整体说明爬虫目的,快速启动以及部署等。
   
   e、pip freeze > requirements.txt   导出当前环境依赖包
   
   f、index.py parse_response 顺序不太合理
   

规范性


改进落实

时间:

改进人:

监督人:
Clone repository
  • README
  • basic_guidelines
  • basic_guidelines
    • basic_guidelines
    • dev_guide
    • project_build
    • 开发流程
  • best_practice
  • best_practice
    • AlterTable
    • RDS
    • azkaban
    • create_table
    • design
    • elasticsearch
    • elasticsearch
      • ES运维
    • logstash
View All Pages