Web scraping 完美的Lua_脚本,从下拉列表中选择元素并等待页面呈现内容

Web scraping 完美的Lua_脚本,从下拉列表中选择元素并等待页面呈现内容,web-scraping,scrapy,screen-scraping,scrapy-splash,splash-js-render,Web Scraping,Scrapy,Screen Scraping,Scrapy Splash,Splash Js Render,我正在使用scrapy和Splash来抓取网站。我想要一个完美的lua脚本,首先单击下拉按钮,然后从那里选择特定的国家名称,例如(Morroco),然后等待页面仅呈现该城市(Morroco)所需的内容(作业)。到目前为止,我尝试过的lua脚本如下所示,但请注意,它根本不起作用 function main(splash, args) assert(splash:go(args.url)) assert(splash:wait(0.5)) local search_buttton =

我正在使用scrapy和Splash来抓取网站。我想要一个完美的lua脚本,首先单击下拉按钮,然后从那里选择特定的国家名称,例如(Morroco),然后等待页面仅呈现该城市(Morroco)所需的内容(作业)。到目前为止,我尝试过的lua脚本如下所示,但请注意,它根本不起作用

function main(splash, args)
  assert(splash:go(args.url))
  assert(splash:wait(0.5))

  local search_buttton = splash:select("div.header-search")
  search_buttton:mouse_click()
  assert(splash:wait(1.5))

  local drop_buttton = splash:select_all("#select2-job-filter-locations-container")[1]
  drop_buttton:mouse_click()
  assert(splash:wait(1.5))

  local choose_buttton = splash:select("#select2-job-filter-locations-result-h0vd-Morroco")
  choose_buttton:mouse_click()
  assert(splash:wait(1.5))

  splash:set_viewport_full()
  return {
    html = splash:html(),
    png = splash:png(),
    har = splash:har(),
  }
end

你有没有检查过你是否可以在没有飞溅的情况下获得数据?是的,我做了…我知道我可以使用API调用刮它,但出于某种原因和良好的实践,我也想学习飞溅。