一:ubuntu下安装python集成环境pycharm以及免费激活

安装

首先去下载最新的pycharm 2016.2.3,进行安装。可以直接在官网下载。选择自己所对应的版本

PyCharm 的激活方式:

1,推荐购买正版。

2,可以选择试用,免费试用30天。

3,网上找激活码:

(下面的激活码来自蓝宇激活,现在激活有效期到2017年2月)

user name: EMBRACE

key:
14203-12042010
0000107Iq75C621P7X1SFnpJDivKnX
6zcwYOYaGK3euO3ehd1MiTT"2!Jny8
bff9VcTSJk7sRDLqKRVz1XGKbMqw3G、

然后傻瓜式默认下一步--下一步:

在ubuntu下添加快捷式命令如下图

然后命令行打开:如下图

软件打开后如下图:

安装一些必要的第三方库:

安装完库后,(建议使用pip进行安装) ,然后使用姚老板爬虫系统进行暴力撞库,匹配学生学号,然后正则匹配学生个人信息,抓取信息到本地文件夹进行保存,等待抓取者二次数据处理以及利用(时间有点久,抓取一个年级基本需要1个半小时)

抓取后的结果如下:

为了本人的生命安全以及学校的数据安全(本次爬虫均为技术分享,不涉及商业利益)下面以我的个人信息为例(01代表计算机学院)

年级的学号就不一一展示了,只展示一下我的就行了!

-------------------------------------我是分割线---------------------------------------------------

二:python求解最大子数组算法(分治策略)

使用分治策略,将数组划分为两个规模尽量相等的子数组。也就是找到数组的中央位置mid。然后考虑求解A[low..mid],A[mid+1,high]。

最大子数组必然为下列三种情况之一:

1.位于A[low..mid],完全位于左数组

2.位于A[mid+1..high],完全位于右数组

3.位于A[i..mid..j],即跨越了中点,且 low<=i<=mid<=j<=high

话不多说,直接上图

代码如下:

# -*- coding:utf8 -*-
def max_subArray_inMid(ary,low,mid,high):
max_sum = -100000
left_index=right_index = mid
sum = 0 i = mid
while low<=i:
sum+=ary[i]
if sum > max_sum:
max_sum = sum
left_index = i
i-=1 i = mid + 1
sum = max_sum
while i <= high:
sum+=ary[i]
if sum > max_sum:
max_sum = sum
right_index = i
i+=1 return (max_sum,left_index,right_index) #没有跨越中点的最大数组
def max_subArray(ary,low,high):
if(low == high):
return (ary[low],low,high) mid = int((low+high)/2)
(left_max,left_left,left_right) = max_subArray(ary,low,mid)
(right_max,right_left,right_right) = max_subArray(ary,mid+1,high) (mid_max,mid_left,mid_right) = max_subArray_inMid(ary,low,mid,high)
if left_max > right_max and left_max > mid_max:
return (left_max,left_left,left_right)
elif right_max > left_max and right_max > mid_max:
return (right_max,right_left,right_right)
else:
return(mid_max,mid_left,mid_right) ary = [13,-3,-25,20,-3,-16,-23,18,20,-7,12,-5,-22,15,-4,7]
print(max_subArray(ary,0,len(ary)-1))

本代码在coding.net地址为:https://coding.net/u/woshicq2012/p/python/git/blob/master/zAdzszh.txt

在linux下写一只优雅的爬虫---优雅的获取沈航所有学生的个人信息的更多相关文章

  1. linux下通过iptables只允许指定ip地址访问指定端口的设置方法

    这篇文章主要介绍了linux下通过iptables只允许指定ip地址访问指定端口的设置方法,需要的朋友可以参考下. 首先,清除所有预设置 iptables -F#清除预设表filter中的所有规则链的 ...

  2. 如何在Linux下写无线网卡的驱动【转】

    转自:http://www.crifan.com/files/doc/docbook/linux_wireless/release/html/linux_wireless.html 版本:v0.3 H ...

  3. 在Linux下写一个简单的驱动程序

    本文首先描述了一个可以实际测试运行的驱动实例,然后由此去讨论Linux下驱动模板的要素,以及Linux上应用程序到驱动的执行过程.相信这样由浅入深.由具体实例到抽象理论的描述更容易初学者入手Linux ...

  4. 怎样在Windows和Linux下写相同的代码

    目前,Linux在国内受到了越来越多的业内人士和用户的青睐.相信在不久的将来,在国内为Linux开发 的应用软件将会有很大的增加(这不,金山正在招兵买马移植WPS呢).由于未来将会是Windows和L ...

  5. 【转】在Linux下写一个简单的驱动程序

    转自:https://www.cnblogs.com/amanlikethis/p/4914510.html 本文首先描述了一个可以实际测试运行的驱动实例,然后由此去讨论Linux下驱动模板的要素,以 ...

  6. 在Linux下写一个线程池以及线程池的一些用法和注意点

    -->线程池介绍(大部分来自网络)  在这个部分,详细的介绍一下线程池的作用以及它的技术背景以及他提供的一些服务等.大部分内容来自我日常生活中在网络中学习到的一些概念性的东西. -->代码 ...

  7. G++ 4.4.7 无法编译模板程序,Vs可以,和解?智者尾部留言,本人第一次使用vs pro,通常并且习惯在linux下写些小东西,虽然程序简单;

    vs 模板编译运行Ok \ linux g++ 4.4.7编译模板测试程序,报无法定义 template <typename or class 中的 AnyType> 类型的数据 Exam ...

  8. linux下写tomcat启动,重启的脚本

    启动: #bash/bin cd /finance/ LANG="en_US.UTF-8" export LANG /finance/tomcat8-finance/bin/cat ...

  9. linux下写脚本时-gt是什么意思

    -eq 等于-ne 不等于-gt 大于-ge 大于等于-lt 小于-le 小于等于

随机推荐

  1. Android单元测试实践

    为什么要写单元测试 首先要介绍为什么蘑菇街支付金融这边会采用单元测试的实践.说起来比较巧,刚开始的时候,只是我一个人会写单元测试.后来老板们知道了,觉得这是件 很有价值的事情,于是就叫我负责我们组的单 ...

  2. unity, reduce android size

    参考: https://www.youtube.com/watch?v=TYSmf_zgtZo http://stackoverflow.com/questions/41087220/how-to-u ...

  3. Docker 官网信息

    Docker Engine Docker-for-linuxhttps://docs.docker.com/engine/installation/linux/rhel/https://docs.do ...

  4. lumen Response

    1.基本响应 所有路由和控制器都会返回某种被发送到用户浏览器的响应,Lumen提供了多种不同的方式来返回响应,最基本的响应就是从路由或控制器返回一个简单的字符串: $app->get('/', ...

  5. 优先级反转实验,使用信号量实现【RT-Thread学习笔记 5】

    RTOS中很经典的问题.就是在使用共享资源的时候,优先级低的进程在优先级高的进程之前执行的问题.这里模拟这种情况. 下面的实验模拟了优先级反转的情况: 先定义三个线程: //优先级反转实验 rt_se ...

  6. hadoop2升级的那点事情(详解)

    前言 前阵子,公司的hadoop从hadoop1.02升级到hadoop2.4.1,记录下升级的步骤和遇到的问题,和大家分享,希望别人可以少走一些弯路 技术选型 当前使用版本:     apache ...

  7. jquery autocomplete实现读取sql数据库自动补全TextBox

    转自我本良人 原文 jquery autocomplete实现读取sql数据库自动补全TextBox 项目需要这样子一个功能,其他部门提的意见,只好去实现了哦,搞了好久才弄出来,分享一下. 1.前台页 ...

  8. tornado api 简单模板

    # 安装 pip insatll tornado # 主文件 web_server.py #!/usr/bin/env python # encoding: utf-8 import tornado. ...

  9. linux默认编辑器 sublime

    开发人员把Vi improved简称Vim Vim编辑器再内存缓冲区中处理数据. 如果再启动Vim时未指定文件名,或者这个文件不存在,Vim会新开一段缓冲区域来编辑. 如果你再命令行下指定了一个已有文 ...

  10. C++模板机制总结

    模板是C++中非常重要的组成部分,之前自己对这块领域一直不太熟悉.最近趁着有时间学习了一下,特此总结. 首先是函数模板,它的定义方式如例子所示: template <typename T> ...