Python工程師的就業(yè)方向有很多,包括Python爬蟲開發(fā),這是一個(gè)非常受歡迎的職位,也是很多公司的熱門職位。那么你知道面試Python爬蟲開發(fā)工程師會(huì)問哪些問題嗎?小編為大家提供了幾個(gè)相關(guān)的面試題,希望對(duì)大家有所幫助。
一、Scrapy和scrapy-redis有什么區(qū)別?
Scrapy是Python爬蟲的框架之一,高效且高度可定制,但不支持分布式;scrapy-redis是一套基于redis數(shù)據(jù)庫并運(yùn)行在scrapy框架上的組件,它允許scrapy支持分布式策略。slaver端共享master端redis數(shù)據(jù)庫中的item隊(duì)列、請(qǐng)求隊(duì)列、請(qǐng)求指紋采集。
二、Scrapy框架的運(yùn)行機(jī)制是什么?
從start_urls獲取第一批URL并發(fā)送請(qǐng)求,請(qǐng)求由引擎交給調(diào)度器進(jìn)入請(qǐng)求隊(duì)列。請(qǐng)求完成后,調(diào)度器將請(qǐng)求隊(duì)列中的請(qǐng)求傳遞給下載器,獲取請(qǐng)求對(duì)應(yīng)的資源,然后將響應(yīng)交給自己編寫的解析方法進(jìn)行提取處理。
1如果提取出需要的數(shù)據(jù),直接下發(fā)到管道文件中進(jìn)行處理;
2如果提取了URL,則繼續(xù)前面的步驟,直到請(qǐng)求隊(duì)列中沒有請(qǐng)求為止,程序就可以結(jié)束了。
三、Post和get的區(qū)別是什么?
post:請(qǐng)求無法緩存,post請(qǐng)求不會(huì)保存在瀏覽器瀏覽記錄中,post請(qǐng)求的url不能保存為瀏覽器書簽;沒有長(zhǎng)度限制;請(qǐng)求會(huì)將請(qǐng)求的數(shù)據(jù)放在http請(qǐng)求包的正文中;Post比get更安全。
Get:從指定服務(wù)器獲取數(shù)據(jù),Get請(qǐng)求可以被緩存;它將保存在瀏覽器的瀏覽歷史記錄中;get請(qǐng)求的URL可以保存為瀏覽器書簽;請(qǐng)求有長(zhǎng)度限制;get請(qǐng)求主要用于獲取數(shù)據(jù)。
以上內(nèi)容為大家介紹了2021年P(guān)ython爬蟲面試題,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。http://m.2667701.com/