Rumah > Soal Jawab > teks badan
Dalam proses menggunakan selenium untuk merangkak 12306, saya mendapati bahawa phantomjs tidak boleh digunakan untuk merangkaknya. Hanya gunakan chromedriver yang sepatutnya dikesan dan disekat oleh laman web menggunakan chromedriver itu kecekapan adalah rendah.
Sekarang saya ada dua soalan Saya telah mencari di Google untuk masa yang lama tetapi saya tidak menemui penyelesaian yang berkesan
1 Bagaimana untuk menyamarkan phantomjs sebanyak mungkin
2 paparkan antara muka, atau adakah terdapat cara lain untuk meningkatkan merangkak. Dapatkan kecekapan
Terima kasih! ! !
PHP中文网2017-05-18 10:55:13
Anda boleh mencapai keperluan anda melalui PyVirtualDisplay Kodnya mungkin seperti ini:
.#!/usr/bin/env python
from pyvirtualdisplay import Display
from selenium import webdriver
display = Display(visible=0, size=(800, 600))
display.start()
# now Firefox will run in a virtual display.
# you will not see the browser.
browser = webdriver.Chrome()
browser.get('http://www.baidu.com')
print browser.title
browser.quit()
display.stop()
Saya tidak tahu sama ada anda telah mengubah suai maklumat pengepala phantomjs Anda boleh lulus
.from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('lang=zh_CN.UTF-8')
options.add_argument('user-agent="Mozilla/5.0 (iPod; U; CPU iPhone OS 2_1 like Mac OS X; ja-jp) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5F137 Safari/525.20"')
browser = webdriver.Chrome(chrome_options=options)
url = "https://baidu.com"
browser.get(url)
browser.quit()
Kaedah ini mengubah suai maklumat pengepala phantomjs Anda juga boleh mencuba ini
.世界只因有你2017-05-18 10:55:13
Anda boleh merujuk artikel saya untuk menjalankan selenium dalam mod tanpa kepala