美文网首页
python+selenium click点击后获取下一级页面源

python+selenium click点击后获取下一级页面源

作者: 也是如此 | 来源:发表于2019-05-28 20:45 被阅读0次

使用python+selenium模拟点击

通过Xpath进行匹配出下一个文章或者下一页的链接后chrome.find_element_by_xpath("//li[@id='sogou_vr_11002301_box_0']/dl[3]/dd/a").click()
若直接点击后通过
chrome.page_source.encode("gbk", "ignore").decode("gbk")获取源码,此时获取的并不是click执行之后的页面的源码,而是上一个页面的源码。
此时可通过判断新的句柄是否是当前句柄,如果新的pay_window句柄不是当前句柄,用switch_to_window方法切换

            #####获取所有页面句柄
            all_Handles = chrome.window_handles
            #####如果新的pay_window句柄不是当前句柄,用switch_to_window方法切换
            for pay_window in all_Handles:
                if pay_window != normal_window:
                    chrome.switch_to_window(pay_window)
                    # time.sleep(10)
                    chrome.find_element_by_xpath("//div[@class='weui_media_bd']/h4[@class='weui_media_title']").click()
                    # print(single_article_url)
                    time.sleep(2)
                    source = chrome.page_source.encode("gbk", "ignore").decode("gbk")
                    print(source)

此时就可以解决click点击后下一页源码获取不到的问题。

相关文章

网友评论

      本文标题:python+selenium click点击后获取下一级页面源

      本文链接:https://www.haomeiwen.com/subject/ajpjtctx.html