Re: [問題]爬蟲問題

看板Python作者 (A動動)時間10年前 (2013/08/24 16:27), 編輯推噓2(207)
留言9則, 5人參與, 最新討論串2/2 (看更多)
※ 引述《Thisisnotptt (這不是PTT)》之銘言: : 小弟最近想練習python的抓站功能,目的是每天定時抓取記憶體顆粒網站的價格 : 但是小弟功力尚淺,怎麼撈都只撈到 "loading...." 撈不到載入過後的表格內文 : 小弟嘗試加入等待時間,但是不是很有效,以下是程式碼,請問該如何抓取載入 : 後的內文呢? : 網站: DRAMeXchange : 網址: http://www.dramexchange.com/#memory : 小弟抓到的狀況都是如圖右,在入中的程式碼,加入延遲後還是得不到圖左的內文 : 圖片: http://www.imgur.com/a7zmgyM.jpg
: <tr> : <td align="center" colspan"12"> : <img scr ="Common/Images/ajax_loading.gif"/> : <br/> : loading..... : <font color="#FFFFFF">DDR3 2G 256Mx8 1333MHz, DDR3 2Gb 256Mx8 eTT,<br/> : DDR3 1Gb 128Mx8 eTT, DDR3 1Gb 128Mx8 1333Mhz<br/> : . : . : . : . : . : 請問該怎麼抓到該處Loading後的DATA呢? : 謝謝! 小弟不才,試著回答一下問題 他網頁是先寫好一個如你的圖右邊的架構,中間的價格等元素,則是當網頁loading的時候,用javascript執行一些程式碼,然後得到JSON的資料,最後取代loading的label 所以會抓到loading的字樣,下面是他網頁原始碼的一部份 function NationalFlashSpotPrice() ....略.... $.getJSON(NationalFlashSpotPriceURL+ 'Common/Json/HomePriceOpt.aspx?Source=Flash_Spot&rnd='+ Math.floor(Math.random() * 99999999999), ....略.... 不好意思排版排的有點奇怪。 http://www.dramexchange.com/Common/Json/HomePriceOpt.aspx?Source=Dram_Spot&rnd=23 如果把網址打上去最後面rnd隨便打個數字,應該能抓到一些JSON的資料 JSON的資料python可以利用import json 來讀取(類似dict) 不知道這樣有沒有解決您的問題?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.228.127 ※ 編輯: localhostphp 來自: 220.135.228.127 (08/24 16:33)

08/24 20:22, , 1F
還有如果要大量抓資料的話,千萬不要FOR下去跑,會
08/24 20:22, 1F

08/24 20:22, , 2F
被當成攻擊...
08/24 20:22, 2F

08/25 00:53, , 3F
感謝大大,請問不用for的話 有辦法可以避免被認認出
08/25 00:53, 3F

08/25 00:53, , 4F
是機器人嗎?
08/25 00:53, 4F

08/25 00:54, , 5F
不知道換不同代理可不可以蒙混過去?
08/25 00:54, 5F

08/25 03:12, , 6F
for迴圈裡面加sleep ?
08/25 03:12, 6F

08/25 13:46, , 7F
加點延遲下去吧!
08/25 13:46, 7F

08/28 19:57, , 8F
請問一般延遲都加多久呢? 半秒,1秒? 被當成攻擊真可怕
08/28 19:57, 8F

09/01 12:24, , 9F
表現的像"人的行為" 就好
09/01 12:24, 9F
文章代碼(AID): #1I66vX-Y (Python)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #1I66vX-Y (Python)