将scrapy爬到的内容存入sqlite数据库

这个方法需要手动创建数据库文件并将表建立好,否则程序运行会出错。 settings.py 1 2 3 4 5 6 # sqlite 配置 SQLITE_DB_NAME = 'Data.db' #数据库名称 SQLITE_TABLE_NAME = 'table' #表名称 ITEM_PIPELINES={ 'dirName.pipelines.Sqlite3Pipeline': 400, } pipelines.py 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 import sqlite3 class Sqlite3Pipeline(object): def __init__(self, sqlite_file, sqlite_table): self.sqlite_file = sqlite_file self.……

阅读全文

机械硬盘调研简略汇报

硬盘的种类 目前商用电脑硬盘主要分为三类: 传统机械硬盘(hard disk drive ,HDD) 混合硬盘(hybrid harddrive,HHD) 固态硬盘(solid state drive, SSD) 机械硬盘的种类: 台式机硬盘 笔记本电脑硬盘 企业级硬盘 消费电子产品内置硬盘 机械主要生产商: 希捷(Seagate) 西部数据(WD) 东芝(Toshiba) 机械硬盘的前景 : 世界范围内机械硬盘行业收入每年下降4%,从2012年380亿美元的峰值逐步下降到2016年的270亿美元。机械硬盘的产量每年增长约16%,从2011年的335艾字节 [1]增长到2016年的693艾字节。希捷和西部数据各占约40~45%,东芝约占13~17%。 随着SSD的兴起,传统机械硬盘的市场份额越来越小。但是机械硬盘在安防,数据存储领域还是有比较大的优势。 机械硬盘的主要零件: 碟盘 disc seperator disc clamp 电机 head stack assembly 头堆总成 永磁体 PCB板 过滤器 硬盘上壳 硬盘壳 螺钉紧固件 硬盘爆炸图 机械硬盘 零件生产工艺分析: 在参观Unisteel和Amtek的过程中,在生产现场看到过disc seperator和disc clamp等零件。这两种零件是使用冲床生产的冲压件。其他零件,如硬盘上壳、永磁体支架等均为冲压件。 我司可以开展业务的领域有: 机床上下料自动化改造 零件电镀或清洗时需要的零部件上挂和下料 零部件的自动尺寸或外观检测。 ……

阅读全文

树莓派安装记录

1. 下载镜像: 下载 http://downloads.raspberrypi.org/raspbian_latest.torrent 最新版的 BT 种子 2. 使用win32 diskimager回复镜像到TF卡: 官方下载地址:http://sourceforge.net/projects/win32diskimager/ 3. 远程桌面: 在windows下访问树莓派需要xdrp服务: sudo apt-get install xrdp 4.首次运行系统需要扩展分区: sudo raspi-config 选中第一个 1 Expand Filesystem 并按Enter确认,之后退出重启,这样才能用到存储卡的全部容量 5.更换国内源: sudo nano /etc/apt/sources.list 测试最佳软件源: 安装 netselect sudo apt-get install netselect git clone git clone https://github.com/sjqlwy/ccrm.git cd ./ccrm 运行 sudo sh ccrm.sh sudo apt-get update 测出连接速度最快的源之后,修改sources.list,(假设结果为阿里源) sudo nano /etc/apt/sources.list 加入: deb http://mirrors.aliyun.com/raspbian/raspbian/jessie main non-free contrib deb-src http://mirrors.aliyun.com/raspbian/raspbian/ jessie main non-free contrib……

阅读全文

SymPy Tutorial

<li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-2">代数</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-3">演算</a> <ul> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-4">极限</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-5">微分</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-6">级数展开</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-7">求和</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-8">积分</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-9">复数</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-10">函数</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-11">微分方程</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-12">代数方程</a> </li> </ul> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-13">线性代数</a> <ul> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-14">矩阵</a> </li> </ul> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-15">模式匹配</a> </li> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-16">打印</a> <ul> <li> <a href="http://reverland.org/python/2012/08/30/sympy-tutorial/#section-17">注意</a> </li> </ul> </li> <li> <a href="http://reverland.……

阅读全文

欧拉第八题

求以下这个一千位数中连续5个数字的最大乘积。 7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 def maxProduct(number): num=list(str(number)) maxProduct=1 for i in range(len(num)): tmp=num[i:i+5] if "0" in tmp: continue else: product=1 for ele in tmp: product=product*int(ele) if product>maxProduct: maxProduct=product return maxProduct if __name__=="__main__": start=clock() num=7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450 print("the Max Product is {0}tRun Time:{1:.9}".format(maxProduct(num),clock()-start)) the Max Product is 40824 Run Time:0.……

阅读全文

Euler第五题

Euler第五题: 求1到20各数的最小公倍数。 目前我用的方法是按照短除法求最小公倍数的方法做的。Euler给出的方法虽然原理基本搞懂,但是编程还没有实现。 ——————————————————————————————————- def primeNumber(k): primes=[2,3,5,7,11,13,17,19] number=21 while number<k: flag=True for prime in primes: if number%prime==0: flag=False break if flag: primes.append(number) number=number+2 return primes def smallestMulti(z): dividends=[] for i in range(z): dividends.append(i+1) print(“{0}n{1}”.format(dividends,”–“*2*len(dividends))) dividers=primeNumber(z) print(“{0}n{1}”.format(dividers,”–“*2*len(dividers))) divisors=[] for divider in dividers: flag=True while flag: for i in range(len(dividends)): if dividends[i]%divider==0: flag=True divisors.append(divider) break else: flag=False for i in range(len(dividends)): if dividends[i]%divider==0: dividends[i]=dividends[i]//divider # print(dividends) print(“{0}n{1}”.format(divisors,”–“*2*len(divisors))) answer=1 for divisor in divisors:……

阅读全文

Euler第四题

寻找一个最大的为两个3位数乘积的回文。 回文就是正着念,反着念相同的数或单词,如 9009 = 91×99。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 from time import clock start=clock() z=999 a=[0,0,0] flag=False for i in range(100000): a[0]=int(z/100) a[1]=int((z-100*a[0])/10) a[2]=int(z-100\*a[0]-10\*a[1]) palindrome=100000\*a[0]+10000\*a[1]+1000\*a[2]+100\*a[2]+10*a[1]+a[0] #print(palindrome) product=999 for j in range(999): if palindrome/product<1000 and palindrome%product==0: print("the answer is {0}={1}".format(palindrome,product,int(palindrome/product))) flag=True break product=product-1 z=z-1 if flag==True or palindrome<0: break print("{0:5f}s".……

阅读全文

Project Euler 第三题的一个nb算法

题目:求600851475143 的最大质因数。 搞了2,3个小时,搞出来的算法效率都很低。网上发现一个nb算法。改成python后如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 def maxPrime(): n=600851475143 d=2 while d<n/d: if n%d==0: n=int(n/d) else: d=d+1 return n if __name__=="__main__": from time import clock start=clock() finish=clock() print("the largest prime factor is {0}\t\t{1}s".format(maxPrime(),(finish-start)/1000000)) 结果: the largest prime factor is 6857 4.462223927783368e-13s 哎,差距啊~……

阅读全文