我尝试为我的服务器制作Crawler。
我找到了chilkat Lib的CKSpider,但它不支持JS Rendering。
所以我尝试将selenium webdriver与Chrome配合使用。
我使用CentOS7,python2.7
运行我想要蜘蛛所有页面都有1个baseDomain。
实施例
BaseDomain = example.com
然后找到类似
的所有页面example.com/event/.../../...
example.com/games/.../...
example.com/../.../..
...
我的抓取工具代码
from selenium import webdriver
import time
options = webdriver.ChromeOptions()
options.binary_location = "/usr/bin/google-chrome"
chrome_driver_binary = "/root/chromedriver"
options.add_argument("--headless")
options.add_argument("user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36")
options.add_argument("lang=ko-KR,ko,en-US,en")
options.add_argument("--window-size=1920x1080")
options.add_argument("--disable-gpu")
options.add_argument("--no-sandbox")
options.add_argument("--disable-extensions")
driver = webdriver.Chrome(chrome_driver_binary, chrome_options=options)
host = example.com
def Crawler(Url):
driver.get(Url)
driver.implicitly_wait(3)
#Do Something
time.sleep(3)
#Crawl next
Crawler(host)
driver.quit()
如何抓取下一页?在selenium还有其他方法
还是需要其他Lib?
感谢任何提示或建议。