摘要:本文基于,平臺完整項目代碼安裝安裝官網下載注意環境變量是否配置成功安裝為了安裝順利,請備好梯子安裝過程中注意以下報錯信息解決辦法下載對應版本的文件表示版本表示位下載后在文件目錄下執行文件名創建項目創建創建在項目跟目錄執行配置文件
本文基于python 3.7.0,win10平臺; 2018-08安裝 安裝python完整項目代碼:https://github.com/NameHewei/python-scrapy
官網下載 https://www.python.org/
注意環境變量是否配置成功
安裝scrapy為了安裝順利,請備好梯子
pip install Scrapy
安裝過程中注意以下報錯信息:
Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools"
解決辦法:
https://www.lfd.uci.edu/~gohl... 下載對應版本twisted的whl文件
cp:表示python版本
amd64:表示64位
下載后在文件目錄下執行: pip install Twisted-18.7.0-cp37-cp37m-win_amd64.whl(文件名)
創建項目創建scrapy:scrapy startproject youName
創建spider:scrapy genspider
如果抓取的內容包含中文可配置:FEED_EXPORT_ENCODING = "utf-8"
報錯誤信息403:把USER_AGENT加上(可在網站請求頭信息中查看)
編寫items.py文件import scrapy class NovelItem(scrapy.Item): title = scrapy.Field() content = scrapy.Field()
這些即你需要保存的字段名
編寫spiderimport scrapy # 引入自定義的items from myTest.items import NovelItem # # 繼承scrapy.Spider class NovelSpider(scrapy.Spider): # 爬蟲名 name = "novel_spider" # 允許的域名 allowed_domains = ["http://www.danmeila.com"] # 入口url 扔到調度器里面去 start_urls = ["http://www.danmeila.com/chapter/20180406/29649.html"] def parse(self, response): movieList = response.xpath("http://*[@id="container"]/div[3]/div[2]/div[2]/div/div/ul/li") novelContent = NovelItem() for item in movieList: u = "http://www.danmeila.com" + item.xpath(".//a/@href").extract_first() yield scrapy.Request(u, callback= self.content_a, meta= { "nc": novelContent }, dont_filter = True) # 放到管道里否則 pipeline獲取不到 # 如果你發現拿到的內容一直為空,注意是否被過濾了,即dont_filter沒有設置 def content_a(self, response): novelContent = response.meta["nc"] novelContent["title"] = response.xpath("http://*[@id="J_article"]/div[1]/h1/text()").extract_first() yield novelContent
注意以下幾點:
采用xpath編寫,在瀏覽器中可以直接查看元素,找到要爬取內容的標簽,右鍵選copy xpath
extract_first()的使用;text() 獲取文本;@屬性名 獲取屬性值
在父節點下使用xpath路徑前要加./
去除換行空格用 xpath("normalize-space(".//div/text()")")
執行導出為json: scrapy crawl your-spider-name -o test.json
如果出現報錯信息:
async語法錯誤,把用到該名稱作為參數的文件全部作修改 把這個參數名改為其它即可
報錯 No module named "win32api": 到https://pypi.org/project/pypi...(下載文件pypiwin32-223-py3-none-any.whl 執行 pip install pypiwin32-223-py3-none-any.whl )
歡迎交流 Github
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/44788.html
摘要:爬蟲是我接觸計算機編程的入門。練練練本文推薦的資源就是以項目練習帶動爬蟲學習,囊括了大部分爬蟲工程師要求的知識點。拓展閱讀一文了解爬蟲與反爬蟲最后,請注意,爬蟲的工作機會相對較少。 爬蟲是我接觸計算機編程的入門。哥當年寫第一行代碼的時候別提有多痛苦。 本文旨在用一篇文章說透爬蟲如何自學可以達到找工作的要求。 爬蟲的學習就是跟著實際項目去學,每個項目會涉及到不同的知識點,項目做多了,自然...
摘要:編寫在文件夾下添加,文件這里用于獲取數據庫中的數據添加路由確保數據庫能連接成功后,便可以啟動項目。本文只是輔助介紹快速搭建一個基本的項目,具體內容請參考若有疑問或錯誤,請留言,謝謝 2018-08,本文適用于對egg有興趣想要了解的同學完整項目代碼:https://github.com/NameHewei/node-egg 項目主要文件目錄結構 |—— app |—— con...
摘要:快速入門首先,初步要做的就是快速構建一個爬蟲。然后把結果加入到一個隊列中。既然是入門,我們肯定是先關心我們需要的。 因為公司項目需求,需要做一個爬蟲。所以我一個python小白就被拉去做了爬蟲。花了兩周時間,拼拼湊湊總算趕出來了。所以寫個blog做個記錄。 快速入門 首先,初步要做的就是快速構建一個爬蟲。 配置環境 Mac下安裝 1) 直接從官網下載 python下載官網 2) 是通過...
閱讀 1117·2023-04-26 03:02
閱讀 1161·2023-04-25 19:18
閱讀 2583·2021-11-23 09:51
閱讀 2561·2021-11-11 16:55
閱讀 2614·2021-10-21 09:39
閱讀 1694·2021-10-09 09:59
閱讀 1991·2021-09-26 09:55
閱讀 3512·2021-09-26 09:55