我試圖避免刮相同的信息不止一次,我每天早上運行這個蜘蛛刮工作董事會的工作,然後我複製他們到Excel中,並按列表中刪除重複使用URL。我想在scrapy中做到這一點(我可以將txt文件更改爲csv)。我會很樂意來實現中間件scrapy重複過濾器與csv文件
這是我嘗試使用
class CraigslistSamplePipeline(object):
def find_row_by_id(item):
with open('URLlog.txt', 'r') as f: # open my txt file with urls from previous scrapes
urlx = [url.strip() for url in f.readlines()] # extract each url
if urlx == item ["website_url"]: # compare old url to URL being scraped
raise DropItem('Item already in db') # skip record if in url list
return
我敢肯定,這個代碼是錯誤的pipleing,可以有人請建議我怎麼能做到這一點,林很新的這樣解釋每一行會幫助我很多。我希望我的問題是有道理的,有人可以幫我
香港專業教育學院看着這些帖子求助,但沒能解決我的問題:
How to Filter from CSV file using Python Script
Scrapy - Spider crawls duplicate urls
how to filter duplicate requests based on url in scrapy
你是說'urlx'在從文件中讀取後包含重複項嗎? –
不,這個代碼不起作用,我根本沒有寫入urlx,urlx只是從URLlog.txt文件中獲取它,並且我在抓取完成後手動添加URL到URLlog.txt – user2636623
哦,我想我現在明白了。 –