Python爬虫实战1-解决需要爬取网页N秒后的内容的需求
发表于:2024-12-05 作者:千家信息网编辑
千家信息网最后更新 2024年12月05日,小生博客:http://xsboke.blog.51cto.com -------谢谢您的参考,如有疑问,欢迎交流前引: 当你需要爬取的页面内容在访
千家信息网最后更新 2024年12月05日Python爬虫实战1-解决需要爬取网页N秒后的内容的需求
小生博客:http://xsboke.blog.51cto.com
-------谢谢您的参考,如有疑问,欢迎交流
前引:
当你需要爬取的页面内容在访问页面5秒后才会出现, 这时使用python的requests模块就很难爬取到你想要的内容了. requests和selenium的不同: requests是通过模拟http请求来实现浏览网页的 selenuim是通过浏览器的API实现控制浏览器,从而达到浏览器自动化 上面说了,selenium是通过控制浏览器实现访问的,但是linux的命令行是不能打开浏览器的, 幸运的是Chrome和Firefox有一个特殊的功能headless(无头)模式.(就是wujie面模式) 通过headless模式可以实现在linux命令行控制浏览器。 接下来要实现的就是在linux命令行界面通过Chrome的headless模式,实现获取访问网页5秒后的内容
一. 环境准备
1. 安装谷歌浏览器linux版及其依赖包. [root@localhost ~]# wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm [root@localhost ~]# yum localinstall google-chrome-stable_current_x86_64.rpm --nogpgcheck 2. 下载selenium连接chrome的驱动程序(要下载和chrome对应的版本). [root@localhost ~]# google-chrome --version Google Chrome 72.0.3626.109 [root@localhost ~]# https://chromedriver.storage.googleapis.com/72.0.3626.69/chromedriver_linux64.zip [root@localhost ~]# unzip chromedriver_linux64.zip [root@localhost ~]# chmod +x chromedrive 3. 安装python需要模块 # beautifulsoup4是一个html,xml解析器 [root@localhost ~]# pip install beautifulsoup4 selenium
二. 开始实现获取网页5秒后的数据
#!/usr/bin/env python#-*- coding:utf-8 -*-import timefrom bs4 import BeautifulSoupfrom selenium import webdriveropt = webdriver.ChromeOptions() # 创建chrome对象opt.add_argument('--no-sandbox') # 启用非沙盒模式,linux必填,否则会报错:(unknown error: DevToolsActivePort file doesn't exist)......opt.add_argument('--disable-gpu') # 禁用gpu,linux部署需填,防止未知bugopt.add_argument('headless') # 把chrome设置成wujie面模式,不论windows还是linux都可以,自动适配对应参数driver = webdriver.Chrome(executable_path=r'/root/chromedriver',options=opt) # 指定chrome驱动程序位置和chrome选项driver.get('https://baidu.com') # 访问网页time.sleep(5) # 等待5秒content = driver.page_source # 获取5秒后的页面soup = BeautifulSoup(content,features='html.parser') # 将获取到的内容转换成BeautifulSoup对象driver.close()print(soup.body.get_text()) # 通过BeautifulSoup对象访问获取到的页面内容
浏览
浏览器
模式
内容
网页
页面
命令
对象
控制
就是
模块
程序
驱动程序
驱动
不同
特殊
幸运
接下来
位置
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
asp后台连接数据库出错
数据库物理文件分为三类
不用服务器的erp软件
河北软件开发一般多少钱
ps5备份什么服务器
网上哪里有软件开发的活
电脑计算机的管理服务器在哪里
智能软件开发专业
数据库安全专业就业前景
求职简历计算机网络技术
教育技术型网络技术知识点
查看erp数据库中数据字典
小渠道服务器
软件开发格式化
河北盘古网络技术公司待遇
怎么吧东西保存到数据库
大话西游2服务器联赛
运营管理服务器
新手自学软件开发怎么入门
vac安全服务器启动选项
2021年网络安全行业发展趋势
银河网络技术服务有限公司
大话西游2服务器联赛
山东淄博网络安全宣传周
有关网络安全的代码
服务器配套伺服器
免费无线网络安全威胁
数据库原理与应用教程第5版答案
新秀体测数据库
异构数据库组成特点