技术标签: 网络爬虫 爬虫 python selenium 测试工具
# encoding: utf-8
from selenium import webdriver
import time
import pandas as pd
# 人工设定抓取页数
page_max = 10
# 设置访问网址
url = 'http://news.baidu.com/'
# 浏览器驱动本地存放路径
driver_path = '' # 火狐
# 运行驱动
driver = webdriver.Firefox(executable_path=driver_path)
# 访问
driver.get(url)
# 输入搜索关键词
input_keyword = driver.find_element_by_xpath("//input[@class='word']")
input_keyword.click()
keyword = '新冠疫情'
input_keyword.send_keys(keyword)
# 点击搜索按钮
button_search = driver.find_element_by_xpath("//input[@id='s_btn_wr']")
button_search.click()
page_count = 0
all_title_list = []
all_time_list = []
while page_count < page_max:
titles_list = driver.find_elements_by_xpath("//h3[@class='news-title_1YtI1']")
for news_title in titles_list:
print(news_title.text)
all_title_list.append(news_title.text)
time_list = driver.find_elements_by_xpath("//span[@class='c-color-gray2 c-font-normal']")
for news_time in time_list:
print(news_time.text)
all_time_list.append(news_time.text)
button_next = driver.find_element_by_xpath("//a[@class='n']")
button_next.click()
page_count += 1
df_save = pd.DataFrame(columns=['title', 'time'])
df_save['title'] = all_title_list
df_save['time'] = all_time_list
df_save.to_csv('news.csv')
环境CentOS 7.1 (64-bit system)MySQL 5.6.24CentOS 安装参考:http://www.waylau.com/centos-7-installation-and-configuration/依赖MySQL 依赖 libaio,所以先要安装 libaioyum search libaio # 检索相关信息yum ins..._安装mysql出现1:perl-pod-simple-3.28-4.el7.noarch: [errno 256] no more mirror
Selenium是一个基于浏览器的自动化测试工具,它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid。Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并把录制的操作以多种语言(例如java、python等)的形式导出成测试用例。Selenium WebDriver:提供Web自动化所需的API,主要用作浏览器控制、页面元素选择和调试。_selenium+python自动化框架
以电影检索为例旧版豆瓣api地址:https://api.douban.com/v2/movie/subject/24753810新版豆瓣api地址:https://douban.uieee.com/v2/movie/subject/24753810_http://t.yushu.im/v2/movie
(78条消息) 第六章 C语言数组_C语言数组的越界和溢出_qq_43205256的博客-程序员宅基地_c语言溢出和越界_c语言数组的越界和溢出
StringString类即被final修饰的不可变字符串类,java中的字符串常量都是此类的实例。创建方式和区别一般有两种创建方式:String str = "hello!";JVM首先在堆中的String常量池中查找是否已存在"hello!"常量,存在则直接将新建的栈中的str引用指向此常量;不存在则先创建该常量并将其放进常量池中,使str指向此常量。 2. Str..._java string 正则表达
在WEB项目中创建一个servlet类,只需要继承HttpServlet类,并且重写dopost或doget方法,在类前面加上注释@WebServlet("/url"),这个类就是servlet类。注释指明了访问路径,及链接的地址,<a href=url>,就能跳转到servlet类执行相关的方法。servlet装载,及把servlet加载到服务器中,有三种情况se...
上一章我们完成了整个用户管理模块的功能,能够正确的增、删、改、查用户。但其中有很多判断实际上是其他类似的模块也会有的,例如:创建用户后回到首页刷新列表;删除次页最后一条数据,回到前一页刷新列表;查询条件的格式化;我们可以约定一个参数params,当通过layouts生成菜单时,发现有params时,就设置state的参数 { name: '用例管理', icon: 'case', path: '/case',_测试开发平台的菜单
#includeusing namespace std;int main(){ int sum = 0; int n = 0; int **array;//指向整型的指针的指针. cout << "请输入矩阵的维数:" << endl; cin >> n; array = new int*[n];//存放指针的数组. for(int k = 0; k < n; k++)_n行n列矩阵的两条对角线元素之和
最近遇倒一些提高matlab代码效率的问题,团队研究决定采用matlab与c混合编译的方式将matlab里的逻辑语句及一系列复杂繁琐的for语句用c转掉,并通过vs执行以提高代码运行速度既然要用混合编译的方式,就会设计到MinGW-w64 C/C++ 编译器的使用,下面我就分享一下我下载安装编译器的一些经验,希望对朋友们有帮助我首先在官网上下在了相应的exe文件,本以为就这样就可以跑通了,谁知..._mingw 6.3
简介Visual Studio Code 是Microsoft在2015年4月30日发布的一个运行于 Mac OS X、Windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器。由于其丰富的插件和优质的性能,广受开发者喜爱。调试在调试Web项目时,我常常要查看调试数据,VS Code 提供比较方便的插件Debugger for Chrome,如图:..._vs web 后端怎么调试
单例模式定义: 保证一个类只能有一个实例,并提供一个访问它的全局方法。试想一下,当我们单击登陆按钮的时候,页面会出现一个登陆框,这个登陆框是唯一的,无论单击多少次按钮都只有一个窗口,这个登陆窗口就是单例模式。惰性单例模式:惰性单例模式是指只有在需要的时候才会创建对象实例。instance实例对象总是在我们调用Single.getInstance时候才会被创建。 var Single =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;由于公司业务需要,需要把MySQL中的binlog信息发送到kafka上,给相关应用去消费,对数据变化作出响应。 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;笔者