尝试将python项目(使用硒来刮除Twitter推文而不使用受限的 Twitter api)转换为R编程。在Python中可以正常工作,但是我想在R中重新创建它。R的新手,但如果有帮助,我有一些MatLab的经验
install.packages("RSelenium") # install RSelenium 1.7.1
Run Code Online (Sandbox Code Playgroud)
据我所知,软件包已更新。因此,我需要使用其他功能来代替startserver()。但是根据所有的研究,我得到了一些矛盾的答案,但都没有用:
require(RSelenium) #used require() and library()
remDr <- remoteDriver(browserName = "chrome")
remDr$open()
Run Code Online (Sandbox Code Playgroud)
我得到错误:
[1] "Connecting to remote server"
Error in checkError(res) :
Undefined error in httr call. httr output: Failed to connect to localhost port 4444: Connection refused
Run Code Online (Sandbox Code Playgroud)
还尝试了:
require(RSelenium)
remDr <- rsDriver(browser = c("chrome"))
Run Code Online (Sandbox Code Playgroud)
我得到:
checking Selenium Server versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking chromedriver versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking geckodriver versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
checking phantomjs versions:
BEGIN: PREDOWNLOAD
BEGIN: DOWNLOAD
BEGIN: POSTDOWNLOAD
[1] "Connecting to remote server"
Run Code Online (Sandbox Code Playgroud)
chrome浏览器(61.0.3163.100)启动,但是由于最后一行,我无法运行代码的下一行。浏览器在自我关闭之前会保持打开状态约半分钟,并且出现此错误:
Selenium message:unknown error: unable to discover open pages
(Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f),platform=Windows NT 6.1.7601 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 60.44 seconds
Build info: version: '3.6.0', revision: '6fbf3ec767', time: '2017-09-27T16:15:40.131Z'
System info: host: 'RENTEC-THINK', ip: '192.168.56.1', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_144'
Driver info: driver.version: unknown
Error: Summary: UnknownError
Detail: An unknown server-side error occurred while processing the command.
Further Details: run errorDetails method
Run Code Online (Sandbox Code Playgroud)
我尝试了多种不同的方法,包括下载chrome驱动程序(v2.33应该支持chrome v60-62 https://sites.google.com/a/chromium.org/chromedriver/downloads),以及在removedriver或将路径添加为系统变量
就像我做不到的任何事情一样,好像那里的RSelenium更新弄乱了一切。我在做蠢事吗?
从网上看到的所有不一致的答案中,我发现自己正在尝试尝试不同代码行的不同组合,将所有内容混搭在一起,以拼命地尝试并通过试用和尝试使它正常工作。单独的错误
我的下一个尝试是找出R安装RSelenium的位置,然后查看代码中的内容:(
我也在考虑docker,但我并不是真的只是为了让我的代码正常工作而安装单独的应用程序。
小智 0
尝试:
remDr <- remoteDriver(browserName = "chrome")
Sys.sleep(5)
remDr$open()
Run Code Online (Sandbox Code Playgroud)
有时,驱动程序尝试打开得太快,您会收到“无法连接到本地主机端口 4444:连接被拒绝”错误。