爬虫学习之动态加载的页面的爬取

首先介绍动态爬取页面的原理和方法:首先使用selenium模仿浏览器获取加载后的页面,然后就可以再对页面进行爬取了

一、工具准备

selenium安装及环境搭建

二、简单的动态页面获取

首先我们通过url来解析页面,再对页面的信息进行爬取

'''
引入必要的包
'''
from selenium.webdriver import Firefox
from selenium.webdriver.firefox.options import Options


#通过spider方法便可以获取一个动态的页面,然后就可以使用静态页面的爬取方法进行获取需要的信息了
def get(url):
    opt = Options() 
    opt.add_argument('-headless')
    driver = Firefox(options=opt) 
    driver.get(url)
    html = driver.page_source      
    driver.quit()
    return html


#####################################
# 设置firefox为无界面浏览器
options = Options()
options.add_argument('--headless')
 
# 打开浏览器
browser = webdriver.Firefox(options=options)
 
# 利用get请求请求浏览器的一个网页
browser.get(url=url)
 
# 打印输出这个网页的源代码
print(browser.page_source)
 
# 关闭浏览器
browser.close()
 
# 杀死chrome浏览器的连接桥(chromedriver)的进程
browser.quit()

三、页面的爬取

通过上面其实已经获取到了页面的信息可以通过pyquery来进行数据的爬取

def spider(url):
    html = get(url)
    doc = pq(html)
    img = doc('img').items()
    for i in img:
        print(i.attr('src'))

#通过pq对html进行初始化  变为Pyquery对象然后获取页面中的全部图片链接并输出

if __name__ == '__main__':
    spider('https://image.baidu.com')

 

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值