2010-03-12 38 views
1

我已經通過這個很多職位瀏覽並嘗試了一些建議,但還沒有完全理解它。 我想刮一些腳本運行的html頁面,通常會執行腳本以在點擊後顯示鏈接。一些提到的螢火蟲和其他人談論了逆向工程我需要的代碼。但是在嘗試逆向工程之後,我仍然沒有看到跟蹤腳本函數後如何獲取數據。屏幕抓取 - 仍然沒有工作

jQuery('.category-selector').toggle(
     function() { 
      var categoryList = jQuery('#category-list'); 
      categoryList.css('top', jQuery(this).offset().top+43); 
      jQuery('.category-selector img').attr  ('src', '/images/up_arrow.png'); 
      categoryList.removeClass('nodisplay'); 
     }, 
     function() { 
      var categoryList = jQuery('#category-list'); 
      jQuery('.category-selector img').attr('src', '/images/down_arrow.png'); 
      categoryList.addClass('nodisplay'); 
     } 
    ); 

    jQuery('.category-item a').click(
     function(){ 

      idToShow = jQuery(this).attr('id').substr(9); 
      hideAllExcept(jQuery('#category_' + idToShow)); 
      jQuery('.category-item a').removeClass('activeLink'); 
      jQuery(this).addClass('activeLink'); 
     } 
    ); 

我使用vb.net和一些網站很容易使用螢火蟲在哪裏看腳本我能夠拉我需要的數據。我在這種情況下做什麼?鏈接是http://featured.typepad.com/和類別是我正在嘗試訪問。注意url不會改變。 欣賞任何迴應。

回答

3

我最好的建議是使用Selenium的屏幕抓取。它通常用於自動網站測試,但會很好地適合您的情況。我曾經在多個場合中篩選過刮AJAX頁面,其中頁面嚴重依賴JavaScript。

http://seleniumhq.org/projects/ide/

你可以寫你的屏幕抓取代碼在.NET運行,並且可以使用Firefox或IE瀏覽器來運行你的屏幕刮。

硒什麼,你會做的是記錄與硒IDE在Firefox屏幕刮會話(查找Firefox擴展在上面的鏈接)。該屏幕抓取會話可以輸出HTML模板或C#代碼。它也可以輸出VB。

你會從屏幕刮複製C#或VB.NET輸出到您將創建並運行通過NUnit的硒項目硒.NET項目。

我建議的一些幫助,讓硒網上找啓動和工作,但是這應該讓你對你的方式。

+0

Thak you for the reponse。一定會考慮硒。 只是想問問,如果你認爲有可能是能夠在Visual Studio中使用,因爲我的履帶式將在一次訪問一堆網址,如果它包含這些類型的腳本的另一種方法,將需要實現不同的功能,爲該站點但在同一個程序中。 我很感激你的反應。 – vbNewbie 2010-03-12 19:25:38