scrapy 爬蟲(chóng)之坑

scrapy 的 field 可以設(shè)置任何類(lèi)型

可以先創(chuàng)建一個(gè)數(shù)組變量

test = []

然后將test賦值給field 即可使用。

--------------------------------------------------------------------------------------------------------------------------------------

如果存在頁(yè)面間的傳值問(wèn)題,可以使用 yield 中的meta

metas={'a':1,'b':2}

yield(url,callback=yourcallback,meta=metas, dont_filter=True)

--------------------------------------------------------------------------------------------------------------------------------------

數(shù)據(jù)庫(kù)設(shè)置問(wèn)題

例 mongo

```

#setings.py

ITEM_PIPELINES = {

? ? ? 'xhs.pipelines.XhsPipeline': 300,

? ? ? 'xhs.pipelines.XhsPipeline':300

}

MONGODB_SERVER = 'localhost'

MONGODB_PORT = 27017

MONGODB_DB = ''#你的數(shù)據(jù)庫(kù)名稱

MONGODB_COLLECTION = '' #你的collections

# piplines.py

import pymongo

class XhsPipeline(object):

? ? def __init__(self):

? ? ? ? connection = pymongo.MongoClient(

? ? ? ? ? ? settings['MONGODB_SERVER'],

? ? ? ? ? ? settings['MONGODB_PORT']

? ? ? ? )

? ? ? ? db = connection[settings['MONGODB_DB']]

? ? ? ? self.collection = db[settings['MONGODB_COLLECTION']]

? ? ? ? # self.coll = db[settings['MONGO_COLL']]? # 獲得collection的句柄

? ? ? ? # self.db = db.primer

? ? def process_item(self, item, spider):

? ? ? ? pass #寫(xiě)你的代碼

```

例 mysql? 這次儲(chǔ)存內(nèi)容報(bào)錯(cuò)了,報(bào)錯(cuò)內(nèi)容沒(méi)有保存 ,換的mongo

```

import pymysql

def dbHandle():

? ? conn = pymysql.connect(

? ? ? ? host='localhost',

? ? ? ? user='root',

? ? ? ? passwd='',

? ? ? ? charset='utf8',

? ? ? ? use_unicode=True

? ? )

? ? return conn

class XhsPipeline(object):

? ? def process_item(self,item,spider):

? ? ? ? dbObject = dbHandle()

? ? ? ? cursor = dbObject.cursor()

? ? ? ? # sql=sql語(yǔ)句

? ? ? ? sql='insert into 庫(kù).表(字段名稱) values (%s,%s,%s,%s,%s)'

? ? ? ? try:

? ? ? ? ? ? cursor.execute(sql,(item[字段名稱]))

? ? ? ? ? ? dbObject.commit()

? ? ? ? except Exception as e:

? ? ? ? ? ? print(e)

? ? ? ? ? ? dbObject.rollback()

```

為什么打出來(lái)不是代碼塊呢啊。。。

可以去這里看?噠噠噠社區(qū)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容