如何用R语言爬取网页表格数据节省一天工作时间

Python012

如何用R语言爬取网页表格数据节省一天工作时间,第1张

如果以后抓取网页碰到动态加载的数据,可以考虑使用 phantomjs 如果想更暴力直接开出一个有界面的浏览器做各式各样的操作,达到ajax无阻碍的,可以用Selenium + Beautifulsoup

r是保持字符串原始值的意思,就是说不对其中的符号进行转义。因为windows下的目录字符串中通常有斜杠"\",而斜杠在Python的字符串中有转义的作用。例如:\n表示换行如果路径中有\new就会被转义。加上r就是为了避免这种情况。

之前写过几种可能: 在这里

我出现的问题:

第一:没有全屏模式,出现了其他按钮的遮挡

解决方案是:

driver.maximize_window()

第二:滑屏出现了问题

我参考的这一篇文章: selenium_通过selenium控制浏览器滚动条

里面的方法我都实验了一遍   不知道为什么 效果不理想

最後花钱找人解决了问题

driver.execute_script('document.documentElement.scrollTop={0}'.format(9000))

一条金贵的代码

最後附上代码  实现翻页  

import time

from seleniumimport webdriver

chrome_options = webdriver.ChromeOptions()

chrome_options.add_argument('--headless')

chrome_options.add_argument('--disable-gpu')

chrome_options.add_argument("'User-Agent': 'Mozilla/5.0 (Windows NT 10.0Win64x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'")

driver = webdriver.Chrome(chrome_options=chrome_options)

driver.get("http://www.mafengwo.cn/poi/5430915.html")

driver.maximize_window()

driver.find_element_by_xpath('//a[@title="蜂蜂点评"]').click()

driver.get_screenshot_as_file(r'C:\Users\weidu\PycharmProjects\day21\pachong\test\dianping.png')

# driver.execute_script("window.scrollBy(0,100000)")

driver.get_screenshot_as_file(r'C:\Users\weidu\PycharmProjects\day21\pachong\test\fanye.png')

driver.implicitly_wait(10)

# driver.switch_to.frame(0)

for _in range(5):

driver.execute_script('document.documentElement.scrollTop={0}'.format(9000))

time.sleep(1)

driver.find_element_by_xpath("//*[text()='后一页']").click()