爬虫-Selenium案例

  Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器)。 火狐浏览器: import selenium.webdriver import time from selenium.webdriver.common.keys import Keys #定义火狐浏览器参数 options = seleni
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

SDUT-2054_数据结构实验之链表九:双向链表

数据结构实验之链表九:双向链表 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 学会了单向链表,我们又多了一种解决问题的能力,单链表利用一个指针就能在内存中找到下一个位置,这是一个不会轻易断裂的链。但单链表有一个弱点——不能回指。比如在链表中有两个节点A,B,他们的关系是B是A的后继,A指向了B,便能轻易经A找到B,但从B却不能找到A。一个简单的想法便能轻易解决这个问题——建立双向链表。在双向链表中,A有一个指针指
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

numpy数组和处理

#用列表+循环实现,并包装成函数 def pySum(n): a = list(range(10)) b = list(range(0, 50, 5)) c = [] for i in range(len(a)): c.append(a[i] ** 2 + b[i] ** 3) return(c) print(pySum(10)) #用numpy实现,并包装成函数 import numpy def npSum(n): a =
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

P1494 [国家集训队]小Z的袜子/莫队学习笔记(误

P1494 [国家集训队]小Z的袜子 题目描述 作为一个生活散漫的人,小\(Z\)每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小\(Z\)再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小\(Z\)把这\(N\)只袜子从\(1\)到\(N\)编号,然后从编号\(L\)到\(R\)(\(L\)尽管小\(Z\)并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右,他却很在意袜子的颜色,毕竟穿两只不同色的袜子会很尴尬。 你的任务便是告诉小\(Z\
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

js jq 简单做一个轮播图

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> #box{ width: 730px; height: 450px; position: relative; left: 20%; } #loop{ width: 100%; height: 100%; } #loop
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

SDUT-2121_数据结构实验之链表六:有序链表的建立

数据结构实验之链表六:有序链表的建立 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 输入N个无序的整数,建立一个有序链表,链表中的结点按照数值非降序排列,输出该有序链表。 Input 第一行输入整数个数N; 第二行输入N个无序的整数。 Output 依次输出有序链表的结点值。 Sample Input 6 33 6 22 9 44 5 Sample Output 5 6 9 22 33 44 Hint 不得使用数
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

189. 旋转数组 | Rotate Array

Given an array, rotate the array to the right by k steps, where k is non-negative. Example 1: Input: [1,2,3,4,5,6,7] and k = 3 Output: [5,6,7,1,2,3,4] Explanation: rotate 1 steps to the right: [7,1,2,3,4,5,6] rotate 2 steps to the right: [6,7,1,
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

(深度好文)重构CMDB,避免运维之耻

(深度好文)重构CMDB,避免运维之耻 CMDB,几乎是每个运维人都绕不过去的字眼,但又是很多运维人的痛,因为CMDB很少有成功的,因此我也把它称之为运维人的耻辱。 那么到底错在哪儿了?该如何去重构它? 今天我想从我的角度来和大家探讨一下业务失败的原因,基于失败再去看重构的逻辑,也许会成功。 从失败中寻找成功的逻辑,往往是最有效的,那我们就来逐一看看: 1、组织的设计问题 我必须把核心原因归结成这一条,很多公司把CMDB的建设责任放到基础设施建设部门,由他们主导承建。最后他们梳理出来的核心逻辑
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

bzoj 5017 炸弹

题目大意: 直线上有n个炸弹有坐标x和半径r 当一个炸弹被引爆时 若有炸弹的坐标在该炸弹坐标+-r范围内则另一个炸弹也被引爆 求先引爆每一个炸弹最终会引爆多少炸弹 思路: 可以想到n平方连边然后tarjan缩点跑拓扑 可以通过线段树来优化建图 对每个点向它能直接引爆的左右范围连边 即用线段树中的线段作为点来建图 1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<cstdlib> 5 #includ
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

线程、并发、内存模型

1.为什么会用到并发 充分利用多核CPU的计算能力 方便进行业务拆分,提升应用性能 面对复杂业务模型,并行程序会比串行程序更适应业务需求,而并发编程更能吻合这种业务拆分 2.并发编程缺点 频繁上下文切换 时间片是CPU分配给各个线程的时间,因为时间非常短,所以CPU不断通过切换线程,让我们觉得多个线程是同时执行的,时间片一般是几十毫秒。而每次切换时,需要保存当前的状态起来,以便能够进行恢复先前状态,而这个切换时非常损耗性能,过于频繁反而无法发挥出多线程编程的优势。通常减少上下文切换可以采用无锁
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

PHP获取文件大小的方法详解

对于初入门的PHP新手来说,PHP获取文件大小这个功能实现,或许有一定的难度。但是相信新手小白们在看过本篇文章介绍后,一定能轻松掌握PHP获取文件大小的重要知识! 下面我们通过具体的代码示例,为大家详细的分析介绍PHP获取文件大小的方法。 一、首先如果你只需要获取文件的字节数 你可以直接通过PHP filesize函数来获取,代码如下: echo filesize("upload.php"); 通过浏览器访问,输出结果如下图: 从上图中可以看到,我们直接输出获取的文件大小是161
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

阿里云 Ubuntu16.04 部署 LAMP

1.更新软件源 sudo apt-get update 2.安装Apache sudo apt-get install apache2 3.查看Apache是否安装成功 apache2 –v 如下所示,表示搭建成功 4. 通过浏览器访问服务器的IP,如果出现Apache欢迎界面,表示安装成功,如下所示: 安装PHP7 sudo apt-get install php7.0 PHP安装成功后,安装 libapache2-mod-php7.0,php关联上Apache sudo apt-get
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

SDUT-2122_数据结构实验之链表七:单链表中重复元素的删除

数据结构实验之链表七:单链表中重复元素的删除 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 按照数据输入的相反顺序(逆位序)建立一个单链表,并将单链表中重复的元素删除(值相同的元素只保留最后输入的一个)。 Input 第一行输入元素个数 n (1 <= n <= 15); 第二行输入 n 个整数,保证在 int 范围内。 Output 第一行输出初始链表元素个数; 第二行输出按照逆位序所建立的初始链表; 第三行输
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

.NET Core中的数据保护组件

原文地址: PREVENTING INSECURE OBJECT REFERENCES IN ASP.NET CORE 2.0 作者: Tahir Naushad 背景介绍 在 OWASP(开放式 Web 应用程序安全项目) 2013 年发布的报告中,将不安全的直接对象引用(Insecure Direct Object Reference)标记为 十大 Web 应用程序风险之一, 其表现形式是对象的引用(例如数据库主键)被各种恶意攻击利用, 所以对于Api返回的各种主键外键ID, 我们需要进行
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

setenforce: SELinux is disabled解决办法

如果在使用setenforce命令设置selinux状态的时候出现这个提示:setenforce: SELinux is disabled 那么说明selinux已经被彻底的关闭了 如果需要重新开启selinux,请按下面步骤: vi /etc/selinux/config 更改为:SELINUX=1 必须重启linux,不重启是没办法立刻开启selinux的 重启完以后,使用getenforce,setenforce等命令就不会报“setenforce: SELinux is disable
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

C语言程序设计I—第三周教学

由于本课程是从教学周的第二周开始上课,所以第二次授课是发生在第三周,为了让PTA、云班课和博客能统一,所以将教学周作为随笔的标题。本周由于处理外聘教师随意退课等事情,总结有些延后了。 第三周教学安排 课前准备:   在蓝墨云班课发布教学资源:1.提问的智慧;2.chap01引言;3.C语言程序设计I—第3周作业。   PTA:2018秋第三周作业——两道主观题(虚拟指令系统编程、汇总Dev-C++常见错误和警告提示)   利用蓝墨云班课要求学生提交阅读体会和第三周学习总结(附学习进度表) 课堂
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

数位dp浅谈(hdu3555)

数位dp简介: 数位dp常用于求区间内某些特殊(常关于数字各个数位上的值)数字(比如要求数字含62,49); 常用解法: 数位dp常用记忆化搜索或递推来实现; 由于记忆化搜索比较好写再加上博主比较蒟,所以本文基本只介绍用记忆化搜索实现的数位dp; 记搜写法: 一般记搜写法会暴力搜索每个数的每一位,如果满足特征就加入答案; 而搜索中或搜完后用一个dp数组来存某一区间的特殊数的数量,防止多次重复搜索TLE; 空口说比较苍白无力,举个例子:比如要在1到r中找含49(4和9要连在一起)的特殊数的数量;
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

SDUT-3331_数据结构实验之链表八:Farey序列

数据结构实验之链表八:Farey序列 Time Limit: 10 ms Memory Limit: 600 KiB Problem Description Farey序列是一个这样的序列:其第一级序列定义为(0/1,1/1),这一序列扩展到第二级形成序列(0/1,1/2,1/1),扩展到第三极形成序列(0/1,1/3,1/2,2/3,1/1),扩展到第四级则形成序列(0/1,1/4,1/3,1/2,2/3,3/4,1/1)。以后在每一级n,如果上一级的任何两个相邻分数a/c与b/d满足(c+
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

洛谷P1337 [JSOI2004]平衡点 / 吊打XXX

洛谷P1337 [JSOI2004]平衡点 / 吊打XXX 题意:   有n个重物,每个重物系在一条足够长的绳子上。每条绳子自上而下穿过桌面上的洞,然后系在一起。图中X处就是公共的绳结。假设绳子是完全弹性的(不会造成能量损失),桌子足够高(因而重物不会垂到地上),且忽略所有的摩擦。   问绳结X最终平衡于何处。 思路:   模拟退火。。。   以所有坐标的平均点为绳结坐标的搜索初始点   然后随机两个数dx,dy来产生新的搜索坐标   然后就是照着模拟退火的套路来 代码:   因为是模拟退火的
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0

关于在各种int类型选择时的考虑

  整数类型int在不同版本的c标准中不断丰富。   最初的K&R标准给出了int作为整数的基本类型,给出long、short、unsigned作为int的变式。在c90中又加入了signed。   在c90标准中增加了unsigned long、unsigned int 和unsigned short类型,在c99标准中又增加了long long、unsigned long long类型。   **   需要特别注意的是,在long类型和int类型占用空间相同的机器上编写代码,如需用到一个3
分类: 其他 发布时间: 09-29 21:57 阅读次数: 0