Skip to content

Comments

new since_date mode, support user_id_list file, etc.#93

Merged
dataabc merged 1 commit intodataabc:multi-filefrom
songzy12:master
Nov 16, 2019
Merged

new since_date mode, support user_id_list file, etc.#93
dataabc merged 1 commit intodataabc:multi-filefrom
songzy12:master

Conversation

@songzy12
Copy link
Collaborator

  1. 在 vs code 中开启 pylint 后删掉了无用的 imports
  2. 移除掉了 f 表达式,使得 python3.5 也能运行
  3. 在 config 中支持两种 user_id_list 参数模式:
    1. 显式写出 user_id_list
    2. 文件名
  4. 在 config 中支持两种 since_date 参数模式:
    1. 日期字符串:表示开始日期
    2. 整数:表示开始日期距今天数

@songzy12 songzy12 changed the title four updates based on comments from last pull request new since_date mode, support user_id_list file, etc. Nov 16, 2019
@dataabc
Copy link
Owner

dataabc commented Nov 16, 2019

感谢贡献代码。

2和4已经很好的解决了,1和3还有两个小问题:

  • 通过 vs code 的flake8检测代码,还有几个警告。flake8和pylint这两个我都用,发现有时候二者检查出的问题不同,可能是评判标准不同。比如,html_parser.py第一行,import os没有用到;57行,e没有被使用flake8也会报错,还有几个类似的。这些都是小错误,可改可不该。也可以我来改,因为当初安装flake8用了好长时间,不知道现在是不是。为了修改程序,让你安装这么多软件感觉有点不好意思;

  • 当user_id_list为列表时出错,为txt文件路径时没问题。原因是
    https://github.com/songzy12/weibo-spider/blob/master/spider.py#L28
    前一个type的右括号位置错了。

再次感谢贡献代码

1. remove unused imports
2. support user_id_list file
3. remove f expression, support python3.5
4. support since_date to be days from today
@songzy12
Copy link
Collaborator Author

感谢作者的仔细测试。

  1. flake8 超级好用。从前只配置过一些 auto formatter ,而没太注意使用 linter. 作者提出这一点后体验了一下 linter,感觉非常有用。另一方面 yapf + flake8 不太合适(比如 yapf 自动格式化后的代码在 flake8 看来还是有一些格式问题的)。当前是使用 autopep8 + flake8 的结果,看起来没有报错了。
  2. hhh 我实在是太粗心了,当时改好后只测试了新的模式而没有重测一遍旧模式。现在应该好了。

@dataabc dataabc merged commit 38c2d46 into dataabc:multi-file Nov 16, 2019
@dataabc
Copy link
Owner

dataabc commented Nov 16, 2019

感谢无私贡献代码,太感谢了。

我也觉得flake8好用。flake8和pylint这两个我都有,比较了这两个的使用效果,觉得flake8更适合我,现在主用flake8,很喜欢。我是从atom转到vs code的,配合各种插件,flake8、vim什么的,用起来很舒服。

面对我的各种“唠叨”和“吹毛求疵”,你太有耐心了,我都不好意思啦。人不但热心,效率又高,而且感觉性格超好。值得我学习的地方太多了,再次感谢

@songzy12
Copy link
Collaborator Author

哈哈没有,还是感谢作者。

我最初关注到这个项目是因为想要处理一下微博,打算自己实现之前先在网上搜索了一下。

虽然也看到一些其他的项目,但是只有这个还在持续的维护之中;而且能完全满足自己的需要。

而且感觉作者也非常有耐心,并且测试都很全面仔细。

能为这个项目贡献代码很开心,也祝愿这个项目 star 多多。

@dataabc
Copy link
Owner

dataabc commented Nov 17, 2019

我又发现一个小问题 2333

结果信息无法写入mongo和mysql,它们有一个共同的问题:user_id。现在user_id存储在user['user_id']里,mongo使用时调用的是不存在的user['id'],出错。

mysql的问题有点不同,user数据表有id字段,没有user_id字段。微博用户信息写入mysql时,insert的是不存在的user_id字段,出错。

还有就是insert微博到mongo时,用的是write_weibo方法,MongoWriter用的是weibo_to_mongodb方法,改下weibo_to_mongodb的名字就可以了。

因为前几次测试用的是没有安装数据库的vps,正好想catch下在不安装数据库时写入数据库会报什么错。所以没有测试过数据库,我太粗心了。这次我来改吧,一直麻烦你我有点无地自容了,这两天应该可以修复。

@songzy12
Copy link
Collaborator Author

我也是改完之后只测了一下 txt 模式,
结果发现有这么多错误真是不好意思。

辛苦你啦。

@songzy12
Copy link
Collaborator Author

songzy12 commented Nov 17, 2019

想了想这两个还是我来改吧,毕竟最开始是我把它拆坏的。

顺便可以再熟悉一下那两个数据库的使用。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants