最近一直在用phantomjs 自動登陸並爬取一些數據,突然發現爬取https類型的網站的時候無法正常操作了
困擾了兩天的問題在經過google和stackoverflow的一番搜索后發現原來Phantomjs中有個service_args參數可以忽略https錯誤
在Linux Centos服務器上本來想用Xvfb+Firefox和chrome解決,但是配置了好幾個版本的都無法正常運行
# coding=utf-8
import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
ua = "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.3 Safari/537.36"
cap = webdriver.DesiredCapabilities.PHANTOMJS
cap["phantomjs.page.settings.resourceTimeout"] = 200000
cap["phantomjs.page.settings.loadImages"] = True
cap["phantomjs.page.settings.disk-cache"] = True
cap["phantomjs.page.settings.userAgent"] = ua
cap["phantomjs.page.customHeaders.User-Agent"] =ua
cap["phantomjs.page.customHeaders.Referer"] = "http://tj.ac.10086.cn/login/"
driver = webdriver.PhantomJS(desired_capabilities=cap, service_args=['--ignore-ssl-errors=true'])
到此發現問題解決