Python

python-识别网站所使用的技术

我们可以使用pip工具来安装builtwith模块:pip install builtwith该模块将URL作为参数,下载该URL并对其进行分析,然后返回该网站使用的技术。但有些网站可能对该模块所使用的方法做了某些屏蔽,下面是一些请求返回的结果:以上是访问了下优酷使用的网站技术。
阅读全文

scrapy学习资料

《Building a web crawler with scrapy》 http://blog.siliconstraits.vn/building-web-crawler-scrapy/ Wiki-scrapy https://github.com/scrapy/scrapy/wiki Scrapy 1.1 Document https://doc.scrapy.org/en/1.1/ Scrapy Example  https://github.com/scrapy/dirbot
阅读全文
Python

python–获取公网IP地址

问:何为公网IP地址?答:即互联网中唯一的,且能被全球互联网(鄙视下GFW)访问的网络地址。新建文件get_public_ip.py,内容如下:#!/usr/bin/env python import re,urllib2 class Get_public_ip:     def getip(self):         try:             myip = self.visit("http://ip.chinaz.com/getip.aspx")         except:             try:                 myip = self.visit("http://ipv4.icanhazip.com/")             except:                 myip = "So sorry!!!"         return myip     def visit(self,url):         opener = urllib2.urlopen(url)         if url == opener.geturl():             str = opener.read()         return re.search('\d+\.\d+\.\d+\.\d+',str).group(0) if __name__ == "__main__":     getmyip = Get_public_ip()     print getmyip.getip()运行结果如下:python代码实现,灵活性比较大,另附上Shell命令行获取的三种方式,也比较简单:curl -s http://ifconfig.me curl -s http://ip.chinaz.com/getip.aspx curl -s http://ipv4.icanhazip.com/
阅读全文

python–获取本地网卡通信IP地址

问:何为本地网卡通信IP地址?答:就是你当前使用的是哪个IP地址与互联网进行通讯。通过DNS服务商获取本地网卡通信IP地址,新建文件名为get_local_ip.py,内容如下:#!/usr/bin/env python import socket def Get_local_ip():     """     Returns the actual ip of the local machine.     This code figures out what source address would be used if some traffic     were to be sent out to some well known address on the Internet. In this     case, a Google DNS server is used, but the specific address does not     matter much.  No traffic is actually sent.     """     try:         csock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)         csock.connect(('114.114.114.114', 80))         (addr, port) = csock.getsockname()         csock.close()         return addr     except socket.error:         return "127.0.0.1" if __name__ == "__main__":     IPADDR = Get_local_ip()     print IPADDR
阅读全文
Python

python转换腾讯视频文件

  今晚有朋友问我:怎么把腾讯视频里的文件弄下来让别的播放器播放?   我思考了几秒钟后,感觉到这应该不会那么简单,不然他应该早就用格式工厂或其它视频转换工具转换好了。   因为我之前有用腾讯客户端下载过一个视频,视频格式是QLV的后缀,意思就是经过了 腾讯的“特殊加密”,只有它的播放器可以播放,那么如何才能下载得到视频给其它播放器播放呢?   其实不管是用浏览器看视频还是用客户端看视频,视频作为一种资源,肯定是需要先从服务器下载下来才能播放的,除非客户端做了比较变态的功能,边播放边删除缓存!!但如果是这样的话,另一个问题又来了,删除了缓存,下一次播放时不是又得从服务器下载?我想腾讯不会这么傻逼的给自己服务器增加压力的。于是找到了它的设置页面:     在这个文件夹下,其实有一批后缀为.tdl的文件,只需要把这些文件重新合并为一个新文件夹即可(不过我试了下,需要你把视频从头到尾认认真真的看完,不许快进,这样下载过来的视频才是完整的)。那么代码实现的思路就出来了,其实就一条windows下的命令——copy/b *.tdl newfile.mp4,那么我批量生成视频的方式就怎么简单怎么搞了,python代码献上ConvertQLV.py:  # _*_ coding:utf-8 _*_ #Author: GuoZi #WebSite:http://www.guoziweb.com import os import sys import glob pwd_dir = os.getcwd() output_dir = os.path.join(pwd_dir,'result') cmd = 'copy/b ' if __name__ == '__main__':     if not os.path.exists(output_dir):         os.mkdir(output_dir)     else:         for file in os.listdir(output_dir):             os.remove(os.path.join(output_dir,file))     for path in os.listdir(pwd_dir):         if os.path.isdir(path) and not path == 'result':             cmd_result = cmd + \                          os.path.join(pwd_dir,path,'*.tdl') + ' ' + \                          os.path.join(output_dir, path + '.mp4')             os.system(cmd_result)   接着我们使用pyinstaller打包下这个代码:  python pyinstaller.py -F -w -n ConvertVedio  E:\source_code\python_code\ConvertQLV\ConvertQLV.py   将生成的ConvertVedio.exe放到上面截图中的缓存目录中去双击下吧,结果在当前文件夹下的result目录下,唯一的缺点就是视频名字我是以缓存文件目录名生成的,不知道电影名叫什么,将就着看吧,下面是我生成的视频截图:  好了,终于交差了,瞬间感觉程序员是伟大的,有木有?切!得瑟!   需要的朋友可以在这里下载哦:http://www.guoziweb.com/download/ConvertVedio.exe  
阅读全文