# PySearch **Repository Path**: suemi/PySearch ## Basic Information - **Project Name**: PySearch - **Description**: 简单的新闻类网页索引器 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2016-05-12 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #PySearch ### 第三方依赖 - Elastic = 2.3.0 - Django = 1.9.6 - Elastic-Carrot2 - Scrapy = 1.1.0 - Elastic-SmartCn 关于Python的第三方库请使用pip安装 ```shell pip install -r conf/requirements.txt ``` ### 开发说明 #### 爬虫开发 爬虫开发请继承ArticleSpider父类,仿照ChinaNewsSpider的开发 模式,依次实现父类定义的三个方法 爬虫爬下来的文件需要包含一下属性: - url - author - crawledAt:格式参照utils/Constants/DATETIME_FORMAT - publishAt:格式参照utils/Constants/DATETIME_FORMAT - title - tag - site - content - lang:文章语言,默认中文,中文为'zh_cn',英文为'en' 爬下来的文件按一下规律放置,同一天的放在一个文件夹下,下面再按网站名分开放,下面 给一个例子: ``` data/ 20160519/ chinanews/ 20160519-00:00:00_40ee3545f75e34e98c15581b293930f4.json ... netease/ ... 20160519-18:23:54_40ee3545f75e34e98c15581b29393021.json ``` 爬取的文章以json格式存放,命名遵照爬取时间+'_'+页面URL的MD5校检值 #### 界面开发 界面开发文件全部在website中,请大家对请求的处理方法全部放置在controller文件夹下, HTML文件放置在templates下,js和css文件在static下 #### 工具说明 - PageUtil:管理爬虫获取的文件,具体可以查看注释 - IndexManager:管理ES索引,主要在线下使用,手动提交爬取的文章 - QueryBuilder:文档的增删改查,一个用于线上界面和ES交互的小工具