Basic
31 Jan 2017
爬虫流程记录
配置服务器 :主要流程参考百度经验
更改&上传代码 :
爬取 :
检测 :
爬取结束 :
检测数据 :
抓取数据回本地或上传至百度云 :
再爬取 :
配置服务器
参考百度文献
更改并上传代码
主要是更改5个文件中的AutoSearch中的帐号为自己的信息,两个服务器各使用3个帐号(102-104,105-107)。
\ResearcherGoLinux\ResearcherGoAccounterTest\AccounterTestSpider\ResearcherGoAccounterTest\ResearcherGoAccounterTest\spiders\ResearchGoAutoSearch.py
\ResearcherGoLinux\WOS_Spider
Spider_*...\ResearchGoAutoSearch.py
替换WOS_Scheduler/Jounral_list中的内容为自己的Journal_list,30个一批,末尾不能有空行
上传代码至服务器的/tmp下(以后每爬取完成一次后用/tmp下的代码替换掉使用的代码):windows命令行进入putty目录中并执行
pscp -r source_dir root@IP:/tmp
putty连接到服务器,复制代码到/home下
cp -r /tmp/source_dir /home
爬取
转换换行符 :进入服务器中的Journal_list所在目录
sed -i "s/\r//" Journal_List.txt Journal_List_significance.txt
爬取开始前开启监控进程:
1. /home/ResearcherGoLinux/WOS_Monitor/ResearcherGoMonitor/ResercherGoMonitor.py
2. /home/ResearcherGoLinux/Progress_Monitor/ProgressMonitor/ProgressMonitor.py
3. 对上面两个文件赋予777权限并执行:
chmod 777 target
python ./target
查看本用户所在执行的进程:
ps -a
ps -a | grep -c scrapy #应当小于开启调度程序时的输出值(一般为1)
ps -a | grep -c python
查看空间使用:
Top
开始爬取:
进入/home/ResearcherGoLinux/WOS_Scheduler/ResearcherGoScheduler/ 写777权限给ResearcherGoScheduler.py并执行
输入最大scrapy数:1
输入爬取期刊的起始与结束号
priority:General
input:Paper
input:year
爬取结束
调度程序执行完成不一定表示已经爬取结束,需要查看是否还有scrapy进程在执行,若没有则代表爬取结束 :
ps -a | grep -c scrapy
检测数据
查看ScheduleData(已经调度的期刊)
ProgressData(已经爬取的期刊)
/WOS_Spider/ General和New_Data是需要传回的数据文件夹
/Data/General
/Json_Data/New_Data
数据传回
先将数据(General&New_Data)压缩到/tmp下,最好使用相对路径(先进入到General或New_Data所在的目录下):
zip -r /tmp/xxx.zip General
zip -r /tmp/xxx.zip New_Data
利用pscp将数据传回:
pscp root@IP:/tmp/source.zip target.zip
利用百度云将数据传回:
再次爬取
再次爬取前将/home下的代码删除并从/tmp下重新复制过来. 将/tmp下的压缩数据也删除避免与后面的重复
rm -r target
cp -r /tmp/target /home
测试帐号: ResearcherGoLinux\ResearcherGoAccounterTest\AccounterController\AccounterCScheduler.py:
赋权限并执行->input:Personal…
重复爬取流程