Javascript 网络垃圾!!如何使用单击事件数据进行爬网?
我尝试爬网此页面: 但也存在一些问题。 首先,Scrapy无法解释javascript。 我想获取一些“href”数据,以便在该按钮(红色方框一)中再次爬网 网站截图 即使我也不能使用硒。 因为按钮代码在脚本中。 所以xpath找不到Javascript 网络垃圾!!如何使用单击事件数据进行爬网?,javascript,python,selenium,scrapy,Javascript,Python,Selenium,Scrapy,我尝试爬网此页面: 但也存在一些问题。 首先,Scrapy无法解释javascript。 我想获取一些“href”数据,以便在该按钮(红色方框一)中再次爬网 网站截图 即使我也不能使用硒。 因为按钮代码在脚本中。 所以xpath找不到 <script id="headerNavigationTemplate" type="text/x-handlebars-template"> {{#ifCond templateType '===' 'main'}} <na
<script id="headerNavigationTemplate" type="text/x-handlebars-template">
{{#ifCond templateType '===' 'main'}}
<nav class="header_gnb" id="gnbNavArea">
{{else}}
<div class="header_gnb" id="gnbNavArea">
{{/ifCond}}
<div class="inner">
<h1 class="hide">대메뉴</h1>
<div class="gnb_l">
<div class="gnb_nav gnb_nav_category" id="gnbCategoryArea">
<p name="gnbNavBtn"><button type="button" class="gnb_btn_all" data-ga-event-category="PC_GNB" data-ga-event-action="전체보기 버튼" data-ga-event-label=""><span class="in_btn"><span class="ico"></span>전체보기</span></button></p>
<div class="gnb_nav_category_layer">
<div class="gnb_total_category">
<div class="row" id="navCtgrRow1"></div>
<div class="row" id="navCtgrRow2"></div>
<div class="row" id="navCtgrRow3"></div>
<div class="row" id="navCtgrRow4"></div>
<div class="row" id="navCtgrRow5"></div>
<div class="row" id="navCtgrRow6"></div>
<div class="row" id="navCtgrRow7"></div>
<div class="row" id="navCtgrRow8"></div>
<div class="row" id="navCtgrRow9"></div>
我怎么能爬。
请帮助我。请尝试以下脚本以获取所需数据:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.11st.co.kr/html/main.html')
driver.find_element_by_xpath("//span[contains(text(), '전체보기')]").click()
print(driver.find_element_by_xpath('//div[@class="gnb_total_category"]/div').text)
检查源代码中的json数据。如果该页面的源代码中有json数据,您可以使用xpath提取该数据并执行您的操作。否则,您必须检查其他加载的文件(在chrome中,检查-网络选项卡可能会有所帮助)。试着找出你需要的数据来自哪里@김혜지, 显示您想要获得的确切输出谢谢!我犯了个错误。谢谢你的提及,现在我解决了
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.11st.co.kr/html/main.html')
driver.find_element_by_xpath("//span[contains(text(), '전체보기')]").click()
print(driver.find_element_by_xpath('//div[@class="gnb_total_category"]/div').text)