CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-9 @author: guaguastd @name: weiboFrequencyAnalysis.py ''' if __name__ == '__main__': # get weibo_api to access sina api from sinaWeiboLogin import sinaWeiboLogin sinaWeiboApi = sin…
CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-2 @author: guaguastd @name: tweet_frequency_analysis.py ''' if __name__ == '__main__': # import frequency from frequency import frequency_analysis # import search from search impor…
CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-3 @author: guaguastd @name: tweet_lexical_diversity.py ''' if __name__ == '__main__': # import login, see http://blog.csdn.net/guaguastd/article/details/31706155 from login import…
CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-10 @author: guaguastd @name: weiboLexicalDiversity.py ''' if __name__ == '__main__': # get weibo_api to access sina api from sinaWeiboLogin import sinaWeiboLogin sinaWeiboApi = sin…
非常全的一份Python爬虫的Xpath博文 Xpath 是 python 爬虫过程中非常重要的一个用来定位的一种语法. 一.开始使用 首先我们需要得到一个 HTML 源代码,用来模拟爬取网页中的源代码. 首先我们需要下载一下 lxml 包. pip install lxml 准备一个HTML源代码. from lxml import etree doc=''' <div> <ul> <li class="item-0"><a href=&qu…
python刷取CSDN博文访问量之四 作者:vpoet #coding:utf-8 import requests import urllib2 import re import time def UpFun(Article_Id): url = 'http://blog.csdn.net/u013018721/article/digg?ArticleId=%s' % str(Article_Id) ReferUrl = 'http://blog.csdn.net/u013018721/art…
python刷取CSDN博文访问量之三   作者:vpoet 注:这个系列我只贴代码,代码不注释.有兴趣的自己读读就懂了,纯属娱乐,望管理员抬手若有转载一定不要注明来源 #coding=utf-8 import webbrowser import time import urllib2 import re import os import thread import threading mylock = threading.RLock() tabcount=1 def BlogFun(n,url…
python刷取CSDN博文访问量之二 作者:vpoet 注:这个系列我只贴代码,代码不注释.有兴趣的自己读读就懂了,纯属娱乐,望管理员抬手      若有转载一定不要注明来源 #coding=utf-8 import webbrowser import time import urllib2 import re import os import thread import threading mylock = threading.RLock() tabcount=1 def BlogFun(n…
python刷取CSDN博文访问量之一 作者:vpoet 注:这个系列我只贴代码,代码不注释.有兴趣的自己读读就懂了,纯属娱乐,望管理员抬手 若有转载一定不要注明来源   #coding=utf-8 import webbrowser import time import urllib2 import re import os import thread tabcount=1 def BlogFun(n,url,MaxVisitor): visitcount = r'<span class=&quo…
这是一篇关于python装饰器的博文 在学习python的过程中处处受阻,之前的学习中Python的装饰器学习了好几遍也没能真正的弄懂.这一次抓住视频猛啃了一波,就连python大佬讲解装饰器起来也需要大半天的时间.据说是两个老师轮流讲解,还得吃药才能讲完.详情请见老男孩的第14期视频day4. 听完两位老师的讲解,我算是系统而又全面的理解了装饰器,并将其总结. 一.定义 想要彻底的弄清楚装饰器,就得彻底的弄明白Python装饰器的定义,百科里的定义说:装饰器是一个很著名的设计模式,经常被用于有…
Write a function: def solution(A) that, given an array A of N integers, returns the smallest positive integer (greater than 0) that does not occur in A. For example, given A = [1, 3, 6, 4, 1, 2], the function should return 5. Given A = [1, 2, 3], the…
在python中,删除列表元素的方法有三种,分别为remove(),del(),pop()函数 (1)remove() >>> name = ['小明','小华','小红','小李','小霞','小文'] >>> name.remove('小红') >>> name ['小明', '小华', '小李', '小霞', '小文'] remove()函数里面的参数必须是列表中已有的元素值. (2)del() >>> name = ['小明'…
列表中元素位置的索引用的是L.index 本文实例讲述了Python去除列表中重复元素的方法.分享给大家供大家参考.具体如下: 比较容易记忆的是用内置的set 1 2 3 l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) print l2 还有一种据说速度更快的,没测试过两者的速度差别 1 2 3 l1 = ['b','c','d','b','c','a','a'] l2 = {}.fromkeys(l1).keys() print l2…
如何在python列表中查找某个元素的索引 2019-03-15 百度上回复别人的问题,几种方式的回答: 1) print('*'*15,'想找出里面有重复数据的索引值','*'*15) listA = [100, 94, 88, 82, 76, 70, 64, 58, 52, 46, 40, 34,76] print('列表中第1次出现的位置 = ',listA.index(76)) 2) a_list = ['a','b','c','c','d','c'] find = 'c' print(…
Python+Selenium自动化-定位一组元素,单选框.复选框的选中方法   之前学习了8种定位单个元素的方法,同时webdriver还提供了8种定位一组元素的方法.唯一区别就是在单词element后面增加了一个s表示复数: 0.定位一组元素 find_elements_by_id('') find_elements_by_id_by_class_name('') find_elements_by_tag_name('') find_elements_by_link_text('') fin…
Python+Selenium自动化-定位页面元素的八种方法   本篇文字主要学习selenium定位页面元素的集中方法,以百度首页为例子. 0.元素定位方法主要有: id定位:find_element_by_id(' ') name定位:find_element_by_name(' ') class定位:find_element_by_class_name(' ') tag定位:find_element_by_tag_name(' ') link定位:find_element_by_link_…
目录 Python判断列表是否已排序的各种方法及其性能分析 声明 一. 问题提出 二. 代码实现 2.1 guess 2.2 sorted 2.3 for-loop 2.4 all 2.5 numpy 2.6 reduce 2.7 imap 2.8 izip 2.9 fast 2.10 random 三. 性能分析 3.1 列表前段乱序 3.2 列表中段乱序 3.3 列表后段乱序 3.4 列表完全乱序 3.5 列表元素相同 3.6 列表升序 3.7 列表降序 3.8 迭代器测试 3.9 随机采样…
Python黑帽编程1.5  使用Wireshark练习网络协议分析 1.5.0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and Defense with Python>一书,为了解决很多同学对英文书的恐惧,解决看书之后实战过程中遇到的问题而作.由于原书很多地方过于简略,笔者根据实际测试情况和最新的技术发展对内容做了大量的变更,当然最重要的是个人偏好.教程同时提供图文和视频教程两种方式,供不同喜好的同学选择. 1…
当我们试图从新浪微博抓取数据时,我们会发现网页上提示未登录,无法查看其他用户的信息. 模拟登录是定向爬虫制作中一个必须克服的问题,只有这样才能爬取到更多的内容. 实现微博登录的方法有很多,一般我们在模拟登录时首选WAP版. 因为PC版网页源码中包括很多的js代码,提交的内容也更多,不适合机器模拟登录. 我们实现微博登录的大体思路是这样的: 用抓包工具把正常登录时要提交的字段都记录下来; 模拟提交这些字段; 判断是否登录成功; 原理很简单,让我们一步一步来实现吧. 一.抓包利器Fiddler 在电…
     在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况(报selenium.common.exceptions.NoSuchElementException),一般可以从以下几个方面着手解决: 1.Frame/Iframe原因定位不到元素: 这个是最常见的原因,首先要理解下frame的实质,frame中实际上是嵌入了另一个页面,而webdriver每次只能在一个页面识别,因此需要先定位到相应的frame,对那个页面里的元素进行定位. 解决方案: 如果i…
早上刷空间发现最近好多人过生日诶~ 仔细想想,好像4月份的时候也是特别多人过生日[比如我 那么每个人生日的月份有什么分布规律呢...突然想写个小程序统计一下 最简单易得的生日数据库大概就是新浪微博了: 但是电脑版的新浪微博显然是动态网页...如果想爬这个应该要解析JS脚本[就像上次爬网易云音乐..然而并不会解 其实有更高效的方法:爬移动版 移动版因为手机浏览器的限制大多都做了简化,更有利于爬虫 注意上面的网址:http://weibo.cn/5156584529/info 经测试不同的用户仅仅是…
前言 福利来了,对于用火狐浏览器的小伙伴们,你还在为定位元素而烦恼嘛? 上古神器Selenium Builder来啦,哪里不会点哪里,妈妈再也不用担心我的定位元素问题啦!(但是也不是万能,基本上都能覆盖到) 一.安装Selenium Builder 在火狐浏览器的附加组件中搜索添加Selenium Builder即可.安装好后如下图所示: 二.直接运用 1.打开你要测试的URL或者打开插件后输入你要测试的URL,如下图 2.点击后弹出一个弹窗,如下图: 注:如果你是直接在你要测的网页页面打开这个…
前言 前面的几篇都是讲如何定位一个元素,有时候一个页面上有多个对象需要操作,如果一个个去定位的话,比较繁琐,这时候就可以定位一组对象. webdriver 提供了定位一组元素的方法,跟前面八种定位方式其实一样,只是前面是单数,这里是复数形式:find_elements 本篇拿百度搜索作为案例,从搜索结果中随机选择一条搜索结果,然后点击查看. 一.定位搜索结果 1.在百度搜索框输入关键字“测试部落”后,用firebug查看页面元素,可以看到这些搜索结果有共同的属性. 2.从搜索的结果可以看到,他们…
这是Python cookbook的示例 1 def random_pick(some_list,probabilities): 2 x=random.uniform(0,1) 3 cumulative_probability=0.0 4 for item,item_probability in zip(some_list,probabilities): 5 cumulative_probability+=item_probability 6 if x < cumulative_probabil…
程序元素: 注释,缩进,变量,常量,表达式 输入,输出,分支,循环 示例程序,温度转换程序: #TempConvert.pyval=input("请输入带温度表示符号发温度值(例如:32C):")if val[-1] in ['C','c']: f=1.8*float(val[0:-1])+32 print("转换后的温度为:%.2fF"%f)elif val[-1] in ['F','f']: c=(float(val[0:-1])-32)/1.8 print(&…
关于xpath查找XML元素的一点总结 by:授客 QQ:1033553122   欢迎加入全国软件测试qq群:7156436   测试环境 Win7 64 python 3.4.0 实践出真知 代码如下,更换不同的xpath,和response_to_check进行测试 实验1 xpath = ".//xmlns:return//xmlns:copeWith" response_to_check = '' \'<soap:Envelope xmlns="http://…
来自:天蝎圣诞结 利用Python字典统计 利用Python的collection包下Counter类统计 利用Python的pandas包下的value_counts类统计 字典统计 a = [1, 2, 3, 1, 1, 2] dict = {} for key in a: dict[key] = dict.get(key, 0) + 1 print(dict) collection包下Counter类统计 from collections import Counter a = [1, 2,…
参考:获取python的list中含有重复值的index方法_python_脚本之家 核心思想:建立字典,遍历列表,把列表中每个元素和其索引添加到字典里面 cc = [1, 2, 3, 2, 4] from collections import defaultdict dd = defaultdict(list) for k, va in [(v,i) for i, v in enumerate(cc)]: dd[k].append(va) print(dd) output: defaultdi…
编程中遇到个问题,python json.loads时元素顺序可能会发生变化. 这个对于一些需要使用元素顺序来做一些策略的代码来说是致命的. 在网上查了查,结合自己的知识总结一下. 使用dict时,Key是无序的.在对dict做迭代时,我们无法确定Key的顺序. 如果要保持Key的顺序,可以用OrderedDict. OrderedDict的Key会按照插入的顺序排列,不是Key本身排序. #coding=utf-8 import json import collections my_dict…
操作日期元素 第一种方式直接向输入框输入日期 dateInputBox = self.driver.find_element_by_id("datepicker") dateInputBox.send_keys("11/24/2016") #encoding=utf-8 from selenium import webdriver import unittest, time, traceback from selenium.webdriver.support.ui…