咁你首先要去了解下browser係如何運作。
當你用browser或者selenium去訪問一個website例如aastocks,好大機會首個GET request就係問server拎個plain html document。如果你見到網址最尾有一堆野,例如係
http://www.aastocks.com/tc/stocks/quote/quick-quote.aspx?symbol=00700
咁呢個就係GET request,你用requests.get(url)就可以send同一個packet去server度拎番同一個html document。當你browser接到plain html之後,佢會去run個document入面嘅javascript,然後呢堆javascript會再向server發出不同的request拎其他野,例如係圖片或json,最後就係你browser砌番個完整網頁比你睇。
如果你用selenium要等,咁有可能你要拎嘅數,本身並不存在於plain html入面(例如你要控制selenium去某個box打個股票number然後click某個button)。但你諗下,當你click某個button時,其實都係向server發出一個新的GET(或POST) request,咁情況你只需要知道你target要拎嘅數字(例如股價)存在於邊個request當中,然後用python直接射出相同request就可以。你可以玩下Chrome個developer tools,當你按下submit button時,去Network個tab可以睇到佢send咗個咩packet出去(通常有幾十個咁多,你留意最先發出的一兩個就OK),好大機會就係一個簡單GET request。
如果係第二種情況,佢個數字係要等selenium行晒啲javascript先拎到,咁你可以留意下Network個度發出個十鳩幾個packet,有冇邊啲係屬於json/csv/txt之類,呢啲可能係javascript向server發出用來update番數字的packet,如果你搵到,咁就用佢條url直接拎個json就搞掂啦。
如果server唔肯直接比個json你,咁佢地個backend都係高手,咁無計啦你唯有跟佢規矩用selenium行晒全部step啦。