Rumah  >  Soal Jawab  >  teks badan

python - Halaman web tidak boleh dirangkak semula selepas mengemas kini data

Halaman web yang saya rangkak mengemas kini sekeping maklumat hari ini, dan kemudian perangkak itu berlari tetapi ia tidak merangkaknya.


from pyspider.libs.base_handler import *
from pyspider.database.mysql.mysqldb import SQL

class 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 result
        if not result or not result['title']:
            return
        sql = SQL()
        sql.replace('zhaobiao',**result)
 

    

Saya harap bos boleh lebih spesifik dan lebih banyak pertukaran

给我你的怀抱给我你的怀抱2711 hari yang lalu571

membalas semua(2)saya akan balas

  • 我想大声告诉你

    我想大声告诉你2017-05-18 11:00:50

    @config (umur) tetapan parameter langsung mengabaikan pelaksanaan index.page

    balas
    0
  • 迷茫

    迷茫2017-05-18 11:00:50

    Memandangkan @setiap on_start adalah satu hari, kemudian set age=12 * 60 * 60 半天是比较合适的,保证每次 every 肯定不会被 age 所限制。另外 @config(age=10 * 24 * 60 * 60) dalam self.crawl, yang bermaksud tidak merangkak lagi dalam masa 10 hari.

    balas
    0
  • Batalbalas