python - 網頁更新數據之后無法再次抓取
問題描述
我抓取的網頁今天更新了一條信息,然后爬蟲運行了卻沒有抓取到.
from pyspider.libs.base_handler import *from pyspider.database.mysql.mysqldb import SQLclass Handler(BaseHandler): crawl_config = { } @every(minutes=24 * 60) def on_start(self):self.crawl(’http://www.yxztb.net/yxweb/zypd/012001/012001001/’, callback=self.index_page) @config(age=10 * 24 * 60 * 60) def index_page(self, response):for each in response.doc(’.tdmoreinfosub a’).items(): self.crawl(each.attr.href, callback=self.detail_page)@config(priority=2) def detail_page(self, response):return {'address':'宜興市','url':response.url,'title':response.doc(’font span’).text(),'date' :response.doc(’#tdTitle > .webfont’).text()[8:17], }def on_result(self, result):print resultif not result or not result[’title’]: returnsql = SQL()sql.replace(’zhaobiao’,**result)

希望大佬們能講的具體點然后多交流交流
問題解答
回答1:@config (age)參數設定直接忽略了index.page的執行
回答2:既然 on_start 的 @every 是一天,那么self.crawl 中設置 age=12 * 60 * 60 半天是比較合適的,保證每次 every 肯定不會被 age 所限制。另外 @config(age=10 * 24 * 60 * 60),這是10天內不要再爬的意思啊。
相關文章:
1. boot2docker無法啟動2. docker-compose中volumes的問題3. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””4. java - SSH框架中寫分頁時service層中不能注入分頁類5. nignx - docker內nginx 80端口被占用6. docker安裝后出現Cannot connect to the Docker daemon.7. javascript - mock.js可以存儲數據嗎8. docker api 開發的端口怎么獲取?9. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?10. golang - 用IDE看docker源碼時的小問題

網公網安備