Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 网络垃圾!!如何使用单击事件数据进行爬网?_Javascript_Python_Selenium_Scrapy - Fatal编程技术网

Javascript 网络垃圾!!如何使用单击事件数据进行爬网?

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

我尝试爬网此页面: 但也存在一些问题。 首先,Scrapy无法解释javascript。 我想获取一些“href”数据,以便在该按钮(红色方框一)中再次爬网

网站截图

即使我也不能使用硒。 因为按钮代码在脚本中。 所以xpath找不到

<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)