爬蟲為什麼找不到divclass
1. 請大神幫我看看為什麼我這個簡單的小爬蟲得不到數據急急急急急!!!
關閉scrapy自帶的ROBOTSTXT_OBEY功能,在setting找到這個變數,設置為False即可解決。
我們觀察scrapy抓包時的輸出就能發現,在請求我們設定的url之前,它會先向伺服器根目錄請求一個txt文件:
這個文件中規定了本站點允許的爬蟲機器爬取的范圍(比如你不想讓網路爬取你的頁面,就可以通過robot來限制),因為默認scrapy遵守robot協議,所以會先請求這個文件查看自己的許可權
我們在setting改變ROBOTSTXT_OBEY為False,讓scrapy不要遵守robot協議,之後就能正常爬取了
2. python 爬蟲求教
python爬蟲,requests非常好用,建議使用。匹配結果使用re正則,列:
#-*-coding:utf-8-*-
importre
str1="""
<spanclass="title">尋夢環游記</span>
...
<spanclass="rating_num"property="v:average">9.0</span>
"""
title=re.search(r'<spanclass="title">(.*?)</span>',str1)
iftitle:
print(title.group(1))
rating=re.search(r'<spanclass="rating_num"property="v:average">(.*?)</span>',str1)
ifrating:
print(rating.group(1))
3. python爬蟲小問題
你也不說一下,你用的什麼框架,或者模塊。python爬蟲的方式太多了。
如果只是單純的定位。
你可以搜索一下 div class='time fr'是不是唯一的,如果是就可以通過這個特徵直接定位
比如:rep.xpath('//div[@class='time fr']')
4. python 怎樣爬取div class=cont 裡面的p span
實現方法如下:
載入到XmlDocument,查找p子節點(XPath),如果要在子節點內繼續查找,用遞歸;
string patten_block="<div class=\"wm_sktq_l\">[\\s\\S]*</div>"
string patten_p="<p>[\\s\\S]*</p>" 用組獲取。
5. java寫網路爬蟲,如何爬取在同一個網頁中,但是已經被隱藏的div(需要點擊顯示更多)
這種是用js實現的。所以後面的內容實際上是動態生成的,網路爬蟲抓取的是靜態頁面。
至於解決辦法,網上有幾種:
一種是使用自動化測試工具去做,比如selenium,可以模擬點擊等操作,但是這個其實和爬蟲還是有很大區別的。
二是利用特定的類庫在後端調用js,python的倒是有,但是java的我就不清楚了。
三是自己找到相關的頁面的js代碼,分析出來相關的請求url,直接調新的url就行了,但是一般的js都是加密壓縮的,但是你可以試試。
6. python爬蟲入門測試,我寫的代碼有bug,但是找不到怎麼辦
python是當下十分火爆的編程語言,尤其在人工智慧應用方面。如果有心從事編程方向的工作,最好到專業機構深入學習、多實踐,更貼近市場,這樣更有利於將來的發展。
7. html 沒有指定class 怎麼爬內容下來
可以通過標簽來解決,取頁面中第x個table中第x個tr的第x個td。
例:getelementsbytabname("td").item(3)
8. 寫爬蟲的時候,Beautifulsoup 遇到這種標簽沒有合上的網頁應該怎麼提取
如果找到這個樹的話,就不要用find_all了,用find
html="""<divclass="a">文本一
<divclass="b">文本二
<aclass="c">文本三
</div>
</div>
</a>
"""
foriteminhtml:
content=item.find("div",attrs={"calss":"b"}
9. 關於爬蟲爬不到數據
你這個site.xpath("/table[@class='tzlb']/a/text()").extract()是不是寫錯了啊