Metadata-Version: 2.1
Name: pianyuan
Version: 1.2.4
Summary: a spider from pianyuan.la
Home-page: https://github.com/ptrtonull-workshop/pianyuan
Author: WangTingZheng
Author-email: wangtingzheng@outlook.com
License: UNKNOWN
Description: [![Build Status](https://travis-ci.com/ptrtonull-workshop/PianYuan.svg?branch=master)](https://travis-ci.com/ptrtonull-workshop/PianYuan)
        
        [English](./README-EN.md)
        
        ## 安装
        ```
        pip3 install pianyuan
        ```
        或者
        ```
        git clone https://github.com/ptrtonull-workshop/pianyuan
        cd pianyuan/
        python setup.py install
        ```
        ## 爬取
        你可以使用以下命令，把[此处](http://pianyuan.la/mv?order=score)的电影到数据库里
        ```python
        pianyuan -G start end host username password
        ```
        其中：
        - `-G`：代表`get`，获取信息
        - start：爬取的开始页，比如start等于3的时候对应的网站是[此处](http://pianyuan.la/mv?order=score&p=3)
        - end：爬取的结束页，比如end等于3的时候对应的网站是[此处](http://pianyuan.la/mv?order=score&p=3)
        - host：数据库的地址
        - username：数据库用户的用户名
        - password：数据库用户的密码
        
        如果你的数据库账号没有密码，即密码为空，那你可以执行下面的命令来达到相同的效果
        ```python
        pianyuan -g start end host username
        ```
        此外，你还可以使用以下命令来查看数据库中的数据条数
        ```
        pianyuan -M number localhost root root
        ```
        > 当然，如果你要看更详细的条目，请直接登录数据库查看
        ## 开发
        在你开发时，我们为你准备了协助性的命令脚本，格式为：
        
        ```python
        pianyuan -S action
        ```
        其中：
        - `-S`：代表`shell`，标记此条语句执行的是一些协助性的命令脚本
        - action：代表要执行的动作，目前支持的动作有：
          - init
          - beautify
          - test
        
        当你得到本项目的源码时，你第一步要做的就是安装项目所需要的初始化文件，你可以使用
        ```python
        pianyuan -S init
        ```
        
        当你完成你的代码并且验证了要达到的功能后，你可以使用下面的命令来优化格式
        ```
        pianyuan -S beautify
        ```
        当你要往仓库上传代码时，为了让你的CI能通过你的代码，你可以使用下面的命令查看代码中的格式错误，以确保你的代码符合规范。符合规范的情况为此命令结束后没有返回信息。
        ```python
        pianyuan -S test
        ```
        
        ## 其它
        
        <details>
        <summary><mark><font color=darkred>如何参与本项目</font></mark></summary>
        
        ## 问题的开端
        - 直接在本仓库创建暂时分支，通过pull request 来合并代码
        - fork 本项目，通过pull request来合并代码
        - 提issue，由仓库管理员来改进
        ### 创建分支
        如果你是仓库管理员，拥有直接读写仓库的权限，那么当你有一个改进时，请在[issue](https://github.com/ptrtonull-workshop/PianYuan/issues)提供一个详细的记录，你可以标记这是一个`bug`或者`feature`，并写下具体的描述。
        #### 克隆或更新仓库代码
        执行
        ```git
        git clone https://github.com/ptrtonull-workshop/PianYuan.git
        cd ./pianyuan
        ```
        来克隆本仓库的`dev`分支代码，通常情况下，这个分支的代码是最新的，当然，如果你以前已经克隆过了，那就请您更新一次您的代码，使您的代码保持最新。
        
        如果您第一次下载代码，则意味着您很可能没有本项目需要的相关包，请执行
        ```
        pianyuan -S init
        ```
        来初始化项目来获得本项目需要的包
        #### 新建bug分支
        在GitHub [issue](https://github.com/ptrtonull-workshop/PianYuan/issues)上提交一个`issue`, 记录下bug的情况，记下`issue`的号码，例如您新建了一个编号为#1的`issue`:
        使用
        ```git
        git branch bug#1
        git checkout bug#1
        ```
        从`dev`分支创立并切换到一个bug分支来修复这个bug，#后的号码为`issue`的号码，在这个分支中进行bug的修复。
        #### 检查代码
        在本地文件夹中执行
        ```python
        pianyuan -G 1 1 hostname username password
        ```
        后，程序会自动写入数据到数据库，来测试你的代码的功能是否正常
        
        其中
        - hostname:数据库地址
        - username:用户名
        - password:用户名密码，为空的时候可以不填
        
        在本地项目文件夹中执行
        ```pip
        pianyuan -S beautify
        pianyuan -S test
        ```
        来规范你的python代码，以符合flake8的规范。再使用flake8确认`main.py`中的语法错误和书写规范，如有不符合`flake`规范，提交的代码将无法通过`CI`的检查
        在这条语句中，`E501`的意思是：你最多只能在一行中写79个字符，这个规定过于苛刻，故我们将它删除了
        ```
        E501: E501 line too long (81 > 79 characters)
        ```
        #### 提交
        修复完毕后，commit此次修改
        完毕后，执行
        ```git
        git push origin bug#1
        ```
        来推送该分支到Github。切换到Github，我们再将`bug#1` 通过`pull request`与`dev`分支合并，在这个过程中，我们的CI会检查代码。
        
        等待合并完成之后，我们在本地执行
        ```git
        git push origin :bug#1
        ```
        来远程删除在Github上的多余的分支
        ## Q&A
        > 哪些操作需要直接在Github上提交？
        - README文档需要更新
        - CI配置文件需要更新
        >哪些情况需要直接同步到`master`分支？
        - 有重大更新，可能是一天积累的；
        - 涉及到CI的配置文件的；
        - 紧急的BUG
        </details>
        
Platform: UNKNOWN
Description-Content-Type: text/markdown
