【问题标题】:How can I fake my location in Firefox using R?如何使用 R 在 Firefox 中伪造我的位置?
【发布时间】:2020-08-29 13:12:24
【问题描述】:

我想抓取 Play 商店的美国应用程序,但我在巴西。 如何使用 R 伪造我的位置?我正在使用 Firefox。

这是我的代码:

urls <- c('https://play.google.com/store/apps/collection/cluster?clp=0g4jCiEKG3RvcHNlbGxpbmdfZnJlZV9BUFBMSUNBVElPThAHGAM%3D:S:ANO1ljKs-KA&gsr=CibSDiMKIQobdG9wc2VsbGluZ19mcmVlX0FQUExJQ0FUSU9OEAcYAw%3D%3D:S:ANO1ljL40zU',
          'https://play.google.com/store/apps/collection/cluster?clp=0g4jCiEKG3RvcHNlbGxpbmdfcGFpZF9BUFBMSUNBVElPThAHGAM%3D:S:ANO1ljLdnoU&gsr=CibSDiMKIQobdG9wc2VsbGluZ19wYWlkX0FQUExJQ0FUSU9OEAcYAw%3D%3D:S:ANO1ljIKVpg',
          'https://play.google.com/store/apps/collection/cluster?clp=0g4fCh0KF3RvcGdyb3NzaW5nX0FQUExJQ0FUSU9OEAcYAw%3D%3D:S:ANO1ljLe6QA&gsr=CiLSDh8KHQoXdG9wZ3Jvc3NpbmdfQVBQTElDQVRJT04QBxgD:S:ANO1ljKx5Ik',
          'https://play.google.com/store/apps/collection/cluster?clp=0g4cChoKFHRvcHNlbGxpbmdfZnJlZV9HQU1FEAcYAw%3D%3D:S:ANO1ljJ_Y5U&gsr=Ch_SDhwKGgoUdG9wc2VsbGluZ19mcmVlX0dBTUUQBxgD:S:ANO1ljL4b8c',
          'https://play.google.com/store/apps/collection/cluster?clp=0g4cChoKFHRvcHNlbGxpbmdfcGFpZF9HQU1FEAcYAw%3D%3D:S:ANO1ljLtt38&gsr=Ch_SDhwKGgoUdG9wc2VsbGluZ19wYWlkX0dBTUUQBxgD:S:ANO1ljJCqyI',
          'https://play.google.com/store/apps/collection/cluster?clp=0g4YChYKEHRvcGdyb3NzaW5nX0dBTUUQBxgD:S:ANO1ljLhYwQ&gsr=ChvSDhgKFgoQdG9wZ3Jvc3NpbmdfR0FNRRAHGAM%3D:S:ANO1ljIKta8')

flw_rk <- vector("list", length(urls))
df_total_rk = data.frame()
selCommand <- wdman::selenium(jvmargs = c("-Dwebdriver.firefox.verboseLogging=true"), retcommand = TRUE)
shell(selCommand, wait = FALSE, minimized = TRUE)
remDr <- remoteDriver(port = 4567L, browserName = "firefox")
remDr$open()

for (i in urls){ 
  
  remDr$navigate(i)
  for(j in 1:5){      
    remDr$executeScript(paste("scroll(0,",j*10000,");"))
    Sys.sleep(3)    
  }
    
  html_obj <- remDr$getPageSource(header = TRUE)[[1]] %>% read_html()
  
  names <- html_obj %>% html_nodes(".WsMG1c.nnK0zc") %>% html_text()
  
  flw_rk[[i]] <- data.frame(names = names, stringsAsFactors = F)
}

【问题讨论】:

标签: r web-scraping location


【解决方案1】:

只需使用虚拟专用网络 (VPN)。无需过于复杂的解决方案。我找到了一个免费的并且最适合我的。这是 Google Play 商店应用的链接:
https://play.google.com/store/apps/details?id=free.vpn.unblock.proxy.turbovpn

另外,您可以尝试从 Mozilla 插件商店下载 VPN 扩展。这是链接:
https://addons.mozilla.org/en-US/firefox/addon/setupvpn/

编辑
插件将在无限时间内工作。这就是我认为现在将是您的最佳选择
https://addons.mozilla.org/en-US/firefox/addon/touch-vpn/?src=search

【讨论】:

  • 免费版只能在短时间内使用。运行代码时插件不起作用。
  • 找到了!!!!检查更新的答案:) 这个可以无限期地工作,并且不需要注册。即插即用,就是这么简单。
【解决方案2】:

您可以在 URL 的末尾添加 gl=us

https://play.google.com/store/apps/collection/cluster?clp=0g4YChYKEHRvcGdyb3NzaW5nX0dBTUUQBxgD:S:ANO1ljLhYwQ&gsr=ChvSDhgKFgoQdG9wZ3Jvc3NpbmdfR0FNRRAHGAM%3D:S:ANO1ljIKta8&gl=us

这就是我们在SerpApi 抓取 Play 商店时解决位置问题的方法。

【讨论】:

    【解决方案3】:

    如果您使用的是 Linux,您可以使用代理来欺骗您的位置, 要在 linux(debian/ubuntu) 中使用代理,请执行以下步骤:

    1.输入sudo apt-get install proxychains

    2.输入proxychains &lt;path to code&gt;

    请注意,这些步骤特定于 debain 和 ubuntu,但如果您使用操作系统包管理器,则可以使用其他操作系统的 linux 系统来完成。

    如果您使用的是 windows,请尝试使用基于 firefox 的 Tor 浏览器。Tor 浏览器会自动为您设置多个代理。但是 Tor 更适合浏览,而不是技术(代码)解决方案

    另一种更灵活的 Windows 替代方案可提供更多技术(代码)解决方案是 proxifier

    【讨论】:

    • 谢谢!我正在使用窗户。如何使用 rselenium 通过 tor 报废网站?
    • 宁可使用 proxifier 进行网页抓取
    猜你喜欢
    • 2016-11-12
    • 1970-01-01
    • 1970-01-01
    • 2016-02-11
    • 2016-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多