a spider from pianyuan.la
Project description
安装
pip3 install pianyuan
或者
git clone https://github.com/ptrtonull-workshop/pianyuan
cd pianyuan/
python setup.py install
爬取
你可以使用以下命令,把此处的电影到数据库里
pianyuan -G start end host username password
其中:
-G
:代表get
,获取信息- start:爬取的开始页,比如start等于3的时候对应的网站是此处
- end:爬取的结束页,比如end等于3的时候对应的网站是此处
- host:数据库的地址
- username:数据库用户的用户名
- password:数据库用户的密码
如果你的数据库账号没有密码,即密码为空,那你可以执行下面的命令来达到相同的效果
pianyuan -g start end host username
此外,你还可以使用以下命令来查看数据库中的数据条数
pianyuan -M number localhost root root
当然,如果你要看更详细的条目,请直接登录数据库查看
开发
在你开发时,我们为你准备了协助性的命令脚本,格式为:
pianyuan -S action
其中:
-S
:代表shell
,标记此条语句执行的是一些协助性的命令脚本- action:代表要执行的动作,目前支持的动作有:
- init
- beautify
- test
当你得到本项目的源码时,你第一步要做的就是安装项目所需要的初始化文件,你可以使用
pianyuan -S init
当你完成你的代码并且验证了要达到的功能后,你可以使用下面的命令来优化格式
pianyuan -S beautify
当你要往仓库上传代码时,为了让你的CI能通过你的代码,你可以使用下面的命令查看代码中的格式错误,以确保你的代码符合规范。符合规范的情况为此命令结束后没有返回信息。
pianyuan -S test
其它
如何参与本项目
问题的开端
- 直接在本仓库创建暂时分支,通过pull request 来合并代码
- fork 本项目,通过pull request来合并代码
- 提issue,由仓库管理员来改进
创建分支
如果你是仓库管理员,拥有直接读写仓库的权限,那么当你有一个改进时,请在issue提供一个详细的记录,你可以标记这是一个bug
或者feature
,并写下具体的描述。
克隆或更新仓库代码
执行
git clone https://github.com/ptrtonull-workshop/PianYuan.git
cd ./pianyuan
来克隆本仓库的dev
分支代码,通常情况下,这个分支的代码是最新的,当然,如果你以前已经克隆过了,那就请您更新一次您的代码,使您的代码保持最新。
如果您第一次下载代码,则意味着您很可能没有本项目需要的相关包,请执行
pianyuan -S init
来初始化项目来获得本项目需要的包
新建bug分支
在GitHub issue上提交一个issue
, 记录下bug的情况,记下issue
的号码,例如您新建了一个编号为#1的issue
:
使用
git branch bug#1
git checkout bug#1
从dev
分支创立并切换到一个bug分支来修复这个bug,#后的号码为issue
的号码,在这个分支中进行bug的修复。
检查代码
在本地文件夹中执行
pianyuan -G 1 1 hostname username password
后,程序会自动写入数据到数据库,来测试你的代码的功能是否正常
其中
- hostname:数据库地址
- username:用户名
- password:用户名密码,为空的时候可以不填
在本地项目文件夹中执行
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 push origin bug#1
来推送该分支到Github。切换到Github,我们再将bug#1
通过pull request
与dev
分支合并,在这个过程中,我们的CI会检查代码。
等待合并完成之后,我们在本地执行
git push origin :bug#1
来远程删除在Github上的多余的分支
Q&A
哪些操作需要直接在Github上提交?
- README文档需要更新
- CI配置文件需要更新
哪些情况需要直接同步到
master
分支?
- 有重大更新,可能是一天积累的;
- 涉及到CI的配置文件的;
- 紧急的BUG
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.