Re: [請益] 使用simple_html_dom parsing aspx的網站
※ 引述《microtech (microtech)》之銘言:
: ※ 引述《ireullin (raison detre)》之銘言:
: : 我之前是用c# 並且完成過一樣功能的東西
: : 但是c# 我是使用一個瀏覽器元件
: : 然後去控制瀏覽器的行為來完成目的
: : 在概念上與這個有點不太一樣
: 就我知道的,瀏覽器會去處理http協定、html tag、渲染畫面
: 抓網頁資料來分析時只需要處理http協定、html tag就好
: 概念上應該是一樣的
我概念上的不同指的是
如果是由C#控制瀏覽器元件去進行網頁上的點擊的話
那http協定中所有的參數包含post都是由瀏覽器自行產生的
而目前php的這個做法是post裡頭的東西都要自己塞
: : 誠如您所說的
: : 我之前其實就已經有使用fiddler來觀察過
: : 所以您圖片中那些查詢特定年月與期數的欄位我其實都有填值了
: : 唯獨 __VIEWSTATE/__EVENTVALIDATION 這兩個欄位不知道要填什麼
: : 如果填入與之前fiddler中看到的相同的值的話
: : 會得到 "伺服器此時無法處理您的要求" 的內容
: : 所以才想請教大家
: : 針對aspx的網頁
: : 這些特別的post欄位
: : 使否有什麼解法
: 如上述所言,aspx網頁應該也沒有什麼特別的
: 若能符合該網頁程式的要求,即可取得資料
: 上一篇回覆是直接使用寫好的Java程式(採用的套件是HttpClient4.2.5)
: __VIEWSTATE/__EVENTVALIDATION只要不填值
: 會返回如下內容:
: <html><head><title>Object moved</title></head><body>
: <h2>Object moved to <a href="%2flotto%2fMessage.htm%3faspxerrorpath%3d%2fLotto%2fSuperLotto638%2fhistory.aspx">here</a>.</h2>
: </body></html>
: 重導向至http://www.taiwanlottery.com.tw/lotto/Message.htm?aspxerrorpath=/Lotto/SuperLotto638/history.aspx
: 就是您說的:「伺服器此時無法處理您的要求,請見諒。」
: 實際使用Simple HTML DOM Parser測試,不填值也是出現「伺服器此時無法處理您的要求,請見諒。」
: __VIEWSTATE/__EVENTVALIDATION的值我是使用昨天Charles觀察取得的
: 把值填入__VIEWSTATE/__EVENTVALIDATION可以取得欲查詢的資料
: 提供您參考看看
我試過將fiddler中看到的__VIEWSTATE/__EVENTVALIDATION的值
重新塞回到Simple HTML DOM Parser
可是不行耶= =a
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.71.34
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 5 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章
4
18
6
15