1. Html網頁結構介紹-網頁到底如何傳送資料?爬蟲必學
2. 資料傳遞:Get與Post差異,網路封包傳送的差異
3. Html爬蟲Get教學-抓下Yahoo股票資訊,程式交易的第一步
4. Html爬蟲Get實戰-全台最大美食平台FoodPanda爬蟲,把熊貓抓回家
5. 資料分析實戰,熊貓FoodPanda熱門美食系列|看出地區最火料理種類
6. Json爬蟲教學-Google趨勢搜尋|掌握最火關鍵字
7. Json爬蟲實戰-24小時電商PChome爬蟲|雖然我不是個數學家但這聽起來很不錯吧
8. Html爬蟲Post教學-台灣股市資訊|網韭菜們的救星
9. Html爬蟲Post實戰-全球美食平台UberEat爬蟲
10. Pandas爬蟲教學-Yahoo股市爬蟲|不想再盯盤
11. Pandas爬蟲實戰-爬下全台各地區氣象預報歷史資料
12. 資料分析實戰-天氣預報圖像化|一張圖巧妙躲過雨季
å¨èª²ç¨ãSeleniumä»ç´¹ãèãSeleniumç°å¢è¨å®è測試ãä¸ï¼å·²ç¶å°æåSeleniumç¬è²æéè¦çç°å¢æºå好äºï¼æ¥ä¸ä¾æå就以ç¬ä¸UberEatçºç¯ä¾ä¾é²è¡ç¬è²äºï¼
é¦å å°UberEaté¦é ä¸ï¼è¼¸å ¥æ³ç¬åçå°åè³æï¼å©ç¨ find_element_by_xpath()æ¹æ³ä¾é²è¡ç¬åã
#--- 輸å
¥å¤éå°å
getblock = driver.find_element_by_xpath('//*[@placeholder="輸å
¥å¤éå°å"]')
getblock.send_keys('ä¸å±±åè·¯äºæ®µ1è') # 輸å
¥å°å
time.sleep(1)
getblock.send_keys('\ue007') # æä¸Enter
é¦å å ä½¿ç¨ find_elements_by_class_name()æ¹æ³ä¾æä¸æ¯ååºå®¶çå稱ï¼ä½æ¤æ¹æ³ææä¸äºéå¶ãä¸æ¹é¢ï¼è¥æ³ç¬åçè³ææ²æ class éåæ¨ç±¤ï¼æç¡æ³ç¬åãå¦ä¸æ¹é¢ï¼è¥éåclass 被大é使ç¨ï¼å¯è½æç¬å°è¨±å¤ç¡æ義çè³æã
#æ¹æ³1ï¼å©ç¨classæå
len(driver.find_elements_by_class_name('lv'))
len(driver.find_elements_by_class_name('g3'))
len(driver.find_elements_by_class_name('ag'))
for i in driver.find_elements_by_class_name('lv'):
print(i.text + '\n')
第äºç¨®æ¹æ³ä½¿ç¨ãåæ´è¥ãçæ¹å¼é²è¡Seleniumç¬è²ï¼éåæ¹å¼è¼çºè¤éï¼è¥æ²æ寫é網é å端ç人ï¼å¯è½ææ¯è¼é£ç解éåæ¹å¼ã
#æ¹æ³2ï¼å©ç¨åæ´è¥æ¹å¼
location = '//main/div/div[3]/div[2]/div/div[4]/div['
# driver.find_element_by_xpath('//main/div/div[3]/div[2]/div/div[4]/div[1]/div/a/h3')
for i in range(1, 21):
print(driver.find_element_by_xpath(location + str(i) + ']/div/a/h3').text + ' ')
doit = True
i = 1
while doit:
try:
print(driver.find_element_by_xpath(location + str(i) + ']/div/a/h3').text + ' ')
except:
doit = False
print(i)
i = i + 1
作者:楊超霆 行銷搬進大程式 創辦人