selenium+PhantomJS+IP代理
首先安裝selenium、PhantomJS
selenium安裝
pip install selenium
PhantomJS安裝
這個需要手動的到官網下載
開始使用
導入需要的包
import random from selenium import webdriver from selenium.webdriver.common.proxy import ProxyType # 調用鍵盤按鍵操作 from selenium.webdriver.common.keys import Keys # 調用鼠標操作 from selenium.webdriver import ActionChains # 設置請求頭 from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
操作PhantomJS
desired_cap = DesiredCapabilities.PHANTOMJS.copy() # 設置請求頭 desired_cap['phantomjs.page.settings.User-Agent'] = 'user_agent...' # 配置代理IP proxy = [ '--proxy=%s' % "139.199.38.177:8118", # 設置的代理ip '--proxy-type=http', # 代理類型 '--ignore-ssl-errors=true', ] # 啟動PhantomJS driver = webdriver.PhantomJS(executable_path="./phantomjs-2.1.1-linux-x86_64/bin/phantomjs", desired_capabilities=desired_cap, service_args=proxy) # 設置屏幕大小 driver.set_window_size(800, 600) # 請求網頁 driver.get("http://www.baidu.com/") # 根據html元素的id找到搜索框,并且輸入要搜索的內容 driver.find_element_by_id('kw').send_keys("時光不寫博客") # 查到搜索按鈕,并且點擊搜索 random.choice([ # 使用鼠標點擊操作 driver.find_element_by_id('su').click(), # 使用鍵盤回車操作 driver.find_element_by_id('su').send_keys(Keys.RETURN) ]) # 截屏 driver.save_screenshot('baidu.png') # 使用xpath查到標簽,并且點擊 driver.find_elements_by_xpath("http://div[@id=%s]/h3/a" % 2)[0].click() # 拿到當前瀏覽器的最后一個tab,這是一個列表的形式 tab = driver.window_handles[-1] # 切換到剛剛點擊的頁面 driver.switch_to_window(tab) driver.save_screenshot('blog.png') # 根據標簽名查到要點擊的數據 title = driver.find_element_by_tag_name("title") # 移動鼠標到title的位置,并且點擊 ActionChains(driver).move_to_element(title).click(title).perform() # 刷新頁面 driver.refresh() # 打印頁面源碼 driver.page_source title = driver.find_elements_by_xpath("http://a[@href='/.']")[0] # 移動到title下10像素位置,并且雙點擊 ActionChains(driver).move_to_element_with_offset(title, 0, 10).double_click().perform() # 退出 driver.quit()
具體操作命令
參考鏈接:時光不寫博客
Selenium
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。