分类目录归档:programming

在selenium中,如何搞定ext.js这种定位

本人想自动化出报表,在定位时,用的是id定位,测试时无问题,等使用时发现id总变,一查看才知道,报表系统使用的是Ext.js,id生成是随机的,每次不同,只好用其他定位方式了。但用其他的定位也不好定位,因为没测试工具,不可能运行一回测试一回,在网上找到一个程序,是本地运行的,把内容复制进去就可以测试定位了。
再说一下,ext.js通过不变化的id也可以定位。

XPath测试,这个程序是网上找的,怕以后用的时候不在也懒得再写一个。怕有病毒的别下。

直接用xpath定位是这样的。//*[@id=”ext-gen702″]/div/li[2]/div/a/span

现在我xpath用的是//*[@id=”form:p_acct_btn_div”]/div/div/div/ul/div/li[2]/div/a/span这样定位了。因为中间div的id值都是变化的。只好忽略,怕你让过你白。因为有些东西不好放上来,只好不截图了。

python批理下载图片,并改名脚本

根据上一个脚本改进而来,批量下载图片并自动改名。注:没有加try这种东西,而且没有用多进程。
将需要下载的文件名批量保存在一个文本中,每个一条即可。
python 1.py a.txt运行就可以了。

#!/usr/bin/python
# -*- coding: utf-8 -guan*-
import sys
import os
if __name__ == “__main__”:
args = sys.argv
if(len(args) == 2):
smFile = open(args[1]);
smList = smFile.readlines()
smFile.close()
length = range(len(smList))
for i in length:
sm = smList[i].strip(‘n’)
cmd=’wget -O %s.jpg http://xxx.com/mov/%s/cap.jpg’ %(sm,sm)
status=os.popen(cmd)
print cmd

你不知道的六大Apache大數據項目新星

世界各地無數的組織,他們使用的數據現在日益龐大而複雜,使用傳統的數據處理程序已無法再進行優化分析及獲得洞察。而這正是的新一代的大數據應用程序要解決的問題。近期Apache軟件基金會(ASF)又將一批有趣的開源大數據項目畢業為的Apache頂級項目。這意味着,這些項目將能夠得到積極的發展和社區的大力支持。

你不知道的六大Apache大數據項目新星

大多數人都聽過的Apache Spark,一個針對Streaming, SQL,機器學習和圖形處理的內置模塊的大數據處理架構。 IBM和其他公司正在投入數十億美金開發資金到Spark項目,NASA和SETI Institute正在利用Spark的機器學習能力,合作分析TB數量級的外太空無線信號數據,尋找外星智能生命存在的形式。 继续阅读

8大排序算法圖文講解

排序算法可以分為內部排序和外部排序,內部排序是數據記錄在內存中進行排序,而外部排序是因排序的數據很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存。

常見的內部排序算法有:插入排序、希爾排序、選擇排序、冒泡排序、歸併排序、快速排序、堆排序、基數排序等。

本文將依次介紹上述八大排序算法。 继续阅读

分佈式TensorFlow:在Spark上將谷歌的深度學習圖書館進行尺度變換

介紹

Arimo的日益增長的數據科學團隊包括研究和開發機器學習和深入學習新的方法和應用。

我們正在調查的一個主題是分佈式的深度學習。當數據集和模型非常大時,我們就會發現與深度學習相融合的模式和預測值的價值和品種。然而,如果數據或模型不適合機器的內存,培養大型模型可能就會很慢或很難。我們高興地看到谷歌開源了TensorFlow深度學習庫,這樣我們能夠在分佈式Spark環境中運行TensorFlow。

這篇文章是對Arimo的演講題目的概述:Spark的分佈式TensorFlow:2016年Spark東部峰會上提出了調試谷歌深度學習圖書館。 继续阅读

六款好用的Python IDE

“工欲善其事,必先利其器”,如果說編程是程序員的手藝,那麼IDE就是程序員吃飯的傢伙了。

一個優秀的IDE,最重要的就是在普通文本編輯之外,提供針對特定語言的各種快捷編輯功能,讓程序員儘可能快捷、舒適、清晰的瀏覽、輸入、修改代碼。對於一個現代的IDE來說,語法着色、錯誤提示、代碼摺疊、代碼完成、代碼塊定位、重構,與調試器、版本控制系統(CVS)的集成等等都是重要的功能。以插件、擴展系統為代表的可定製框架,是現代IDE的另一個流行趨勢。 继续阅读

關於Python類屬性與實例屬性的討論

之所以想寫這個文章是因為碰巧看到網上一篇關於Pyhon中類屬性及實例屬性區別的帖子。因為我之前也被這個問題困擾過,今天碰巧看到了這篇帖子,發現帖子的作者只是描述了現象,然後對原因的解釋比較含糊,並沒有從根本上解釋這個問題,所以才想寫一下我對這個問題的想法。 继续阅读

用Python做自然語言處理必知的八個工具

Python以其清晰簡潔的語法、易用和可擴展性以及豐富龐大的庫深受廣大開發者喜愛。其內置的非常強大的機器學習代碼庫和數學庫,使Python理所當然成為自然語言處理的開發利器。

那麼使用Python進行自然語言處理,要是不知道這8個工具就真的Out了。

NLTK

NLTK是使用Python處理語言數據的領先平台。它為像WordNet這樣的詞彙資源提供了簡便易用的界面。它還具有為文本分類(classification)、文本標記(tokenization)、詞幹提取(stemming)、詞性標記(tagging)、語義分析(parsing)和語義推理(semantic reasoning)準備的文本處理庫。 继续阅读

一個適合小公司用的開源數據管道工具

最近在Prettyyes一直想建立起非常專業的data pipeline系統,然後沒有很多時間,這幾個禮拜正好app上線,有時間開始建立自己的 data pipeline,能夠很好的做每天的數據導入,數據收集,以及數據分析。

什麼是ETL

ETL 是常用的數據處理,在以前的公司里,ETL 差不多是數據處理的基礎,要求非常穩定,容錯率高,而且能夠很好的監控。ETL的全稱是 Extract,Transform,Load, 一般情況下是將亂七八糟的數據進行預處理,然後放到儲存空間上。可以是SQL的也可以是NOSQL的,還可以直接存成file的模式。

一開始我的設計思路是,用幾個cron job和celery來handle所有的處理,然後將我們的log文件存在hdfs,還有一些數據存在mysql,大概每天跑一次。核心是能夠scale,穩定,容錯,roll back。我們的data warehouse就放在雲上,就簡單處理了。 继续阅读

問世40年,它仍是編寫分佈式應用使用率最高的編程模型

遠程過程調用(RPC)範式的出現可以追溯到40年之前。時至今日,它仍是在編寫分佈式應用時使用率最高的一種編程模型。只是近些年來,人們對於RPC技術的質疑與批評聲逐漸多了起來。Steve Vinoski在2008年曾尖銳地指出,之所以RPC仍然能夠得到諸多開發者的支持,其原因只有一個:舒適感!Vinoski完全不認可這種思想,他表示:
“開發者的舒適感真的比正確性、可伸縮性、性能、關注分離、可擴展性以及附加的複雜性還要重要嗎?”
儘管面臨著這些尖銳的批評,但RPC的歷史地位是不容置疑的,而它在現代化的應用中仍能夠佔據一席之地,成為分佈式計算中一種重要的編程模型。正在攻讀博士學位的Christopher Meiklejohn近來開設了一系列博客文章以回顧分佈式計算中的各種編程模型與語言,在其中一篇文章中對RPC進行了詳盡的回顧與展望。
概述
簡單來說,一台機器上的程序對另一台機器上的子程序的調用就是一次RPC調用。在調用過程中,主程序不需要操心與遠程執行相關的任何代碼,與本地調用相比,其唯一區別就在於需要提供遠程節點的標識。最早為人所知並接受的RPC實現是由Sun提供的SunRPC機制,使用在其網絡文件系統(NFS)中。

继续阅读