- 博客(23)
- 收藏
- 关注
原创 pandas 索引列、过滤、分组、求和
解析html内容,保存为csv文件http://blog.csdn.net/github_26672553/article/details/78662563 前面我们已经把519961(基金编码)这种基金的历史净值明细表html内容抓取到了本地,现在我们还是需要 解析html,取出相关的值,然后保存为csv文件以便pandas来统计分析。from bs4 import BeautifulSoup
2017-11-30 16:13:53 6792
原创 实战:抓取某只基金历史净值数据
http://fund.eastmoney.com/f10/jjjz_519961.html 1、接下来,我们需要动手把这些html抓取下来(这部分知识我们之前已经学过,现在不妨重温)# coding: utf-8from selenium.webdriver.support.ui import WebDriverWaitfrom selenium import webdriverfrom b
2017-11-30 14:00:56 21004 4
原创 入手pandas分析统计
简单的数据统计和分析前面我们已经完成了基金数据插入到数据表: http://blog.csdn.net/github_26672553/article/details/78646417简单的数据统计和分析,我们可以用SQL直接搞定了。1、查询出NAV前2的数据# coding: utf-8from sqlalchemy import create_engine,descfrom common.c
2017-11-28 10:03:57 535
原创 基金网站数据入库
1、前面我们已经学过了python和mysql交互,把基金网站的数据插入数据库中。 http://blog.csdn.net/github_26672553/article/details/78530019 并且我们是学习了一个ORM框架sqlalchemy: http://blog.csdn.net/github_26672553/article/details/78537605根据sqla
2017-11-27 16:34:50 744
原创 多进程方式抓取基金网站内容
http://blog.csdn.net/github_26672553/article/details/78603539 在前面我们已经简单了解了”python的多进程”,现在我们需要把抓取基金网站(28页)内容写成多进程的方式。因为进程也不是越多越好,我们计划分3个进程执行。意思就是 :把总共要抓取的28页分成三部分。怎么分呢?# 初始ranger = range(1,29)# 步长st
2017-11-23 16:25:40 407
原创 python多进程入门、分布式进程数据共享
python多进程入门https://docs.python.org/3/library/multiprocessing.html1、先来个简单的# coding: utf-8from multiprocessing import Process# 定义函数def addUser(): print("addUser")if __name__ == "__main__": p1 = P
2017-11-22 15:49:51 1867 2
原创 抓取基金网站N页JS生成的内容(多页)
回顾http://blog.csdn.net/github_26672553/article/details/78589068 前面我们已经完成了 利用phantomjs和selenium2个包 抓取到了基金网站第二页的html内容。我们后面认为只要循环就可以抓第三页、第四页、。。。。,但其实这有个坑。 看见没有,其实我们只能循环到第五页。 这个就尴尬了!!!!抓取任意页仔细看上图,在获取
2017-11-22 14:03:34 549
原创 利用phantomjs+selenium抓取fund.eastmoney.com/fund.html网站第二页js生成的页面
http://blog.csdn.net/github_26672553/article/details/78550623 前面我们了解过:利用PyExecJS包来执行js,然后直接拿到了基金网站第二页的字典数据。现在和之前的不一样,我们利用phantomjs和selenium这2个包,模拟人工访问第二页,拿到第二页的网页源代码。1、首先来肉眼分析第二页源码的特征。用户点击”第二页”其实就是点击v
2017-11-21 09:45:33 1095
原创 入手爬虫利器:phantomjs+selenium、自动填充文本框、自动点按钮
http://fund.eastmoney.com/fund.html#os_0;isall_0;ft_;pt_1前面我们通过『眼球』的方式,发现要抓取第二页的数据,是一段js脚本生成的。 我们希望能够启动获取到 第二页、第三页的脚本地址是什么?phantomjs好比是一个没有界面的浏览器内核,可以用它来执行脚本。隐形的执行css选择、DOM操作等。官网地址: http://phantomjs.o
2017-11-20 16:33:56 6722
原创 案列:抓取基金网站JS形式的数据
自动探测网页编码:chardethttp://blog.csdn.net/github_26672553/article/details/78529734 可曾记得,在前面我们抓取基金网站网页的时候,最后要把抓取过来的内容进行gb2312解码才能够看懂。 这是因为该网页就是gb2312编码的,当然那时候我们是肉眼查看才得知的。现在我们利用chardet包来自动帮我探测网页是什么编码。 http
2017-11-16 14:24:32 2431 1
原创 利用sqlacodegen自动生成ORM实体类
http://blog.csdn.net/github_26672553/article/details/78537605 在前面我们是手动创建了一个名叫Infos.py的文件,然后定义了一个News类,把这个类作为和我们news数据表的映射。from sqlalchemy.ext.declarative import declarative_baseBase = declarative_bas
2017-11-16 11:15:51 6196
原创 python里比较流行的ORM框架:sqlalchemy
安装http://docs.sqlalchemy.org1、安装#进入虚拟环境#执行./python3 -m pip installimport sqlalchemyprint(sqlalchemy.__version__) # 1.1.15我这里使用的版本是1.1.15创建连接对象http://docs.sqlalchemy.org/en/latest/orm/tutorial.html#co
2017-11-15 12:00:14 10362
原创 python和mysql交互
python要和mysql交互,我们利用pymysql这个库。 下载地址: https://github.com/PyMySQL/PyMySQL安装(注意cd到我们项目的虚拟环境后):cd 项目根目录/abc/bin/#执行python3 -m pip install pymysql稍等片刻,就会把pymysql库下载到项目虚拟环境abc/lib/python3.5/site-package
2017-11-14 15:49:51 1774
原创 Python获取网页内容、使用BeautifulSoup库分析html
利用 urllib包 获取网页内容#引入包from urllib.request import urlopenresponse = urlopen("http://fund.eastmoney.com/fund.html")html = response.read();#这个网页编码是gb2312#print(html.decode("gb2312"))#把html内容保存到一个文件with
2017-11-14 13:45:34 6109
原创 读取文件、OS模块、异常处理、with as语法
文件读取#读取文件f = open("test.txt","r")print(f.read()) #打印文件内容 #关闭文件f.close()获取文件绝对路径:OS模块os.environ["xxx"] 获取系统环境变量os.getcwd 获取当前python脚本工作路径os.getpid() 获取当前进程IDos.getppid() 获取父进程ID异常#读取文件f = Nonetr
2017-11-14 09:22:08 317
原创 Python的虚拟环境、试玩爬虫相关库:Beautiful Soup
虚拟环境在开发中,各个库的使用可能存在兼容性问题。比如我们在使用npm下载包的时候,一般都尽量使用局部安装,而不是安装到全局。 Python也是如此。我们就要用到虚拟环境。cd 到你的项目根目录python3 -m venv abc abc就是我们虚拟环境的目录名称。(表示这个虚拟环境目录名称可以随意)我们以后下载的库都存放在abc/lib/python3.5/site-packages这个目
2017-11-13 17:28:55 341
原创 Python里 模块、Package概念
Python中”模块”的概念在开发中,我们会有很多函数,我们可以把这些函数都放到一个文件。 比如function.py中:#定义函数def show(): print("jack")#定义变量name = "tom"在其他地方要使用其中的函数怎么办呢? 第一步:需要先引入import funtions第二步:通过文件名.函数名/变量名的方式使用funtions.show() # j
2017-11-13 16:34:24 685
原创 可变和不可变、类的私有属性
可变和不可变items = []print(id(list))items.append(2) # items值改变了print(id(list)) # 但内存地址没有变id()函数获取内存地址。a = "jack"print(id(a))b = "jack"print(id(b)) # b内存地址和上面a一样a = "zhangSan"print(id(a)) # a内存地址变了c
2017-11-11 14:51:34 283
原创 list类型、range()序列、简单认识 类(class)
list类型定义:items = []这就定义了一个名叫items的list。往里填充数据:items.append(1)items.append(3)items.append(4)print(items) # [1, 3, 4]range序列上面那个list,如果我们要append进去0~9的数字。最好是利用循环。items = []for x in range(0,10): it
2017-11-11 13:31:16 3584
原创 从函数参数 引出 元组
自定义函数:特殊参数def show(name="jack", *info): print(name) #jack print(info) #(22, '男')show("jack",22,"男")可以看出22,"男"全部归为了函数的第二个参数*info。 我们可以看到打印这个info参数结果是:小括号包起来的形式。函数的特殊参数升级上面见识了函数参数*xxx这种形式,下面看看2个
2017-11-11 11:55:27 483
原创 Python变量、自定义函数
不管你学什么编程语言都逃不出如下套路: 1、怎么定义变量?是否有数据类型,怎么在控制台输出? 2、怎么定义函数?定义类?面向对象的写法是怎样的? 3、如何调用外部类或函数? 4、如何读写文件?网络编程? 5、如何与数据库交互? 6、如何和各种第三方库交互? 7、有什么好用的框架?变量name="jack" #定义变量print(name) #打印变量#也可以单引号name='jac
2017-11-11 11:27:26 2431
原创 冠词
冠词就是戴在名词头上的帽子,没有特殊情况不能摘帽子。a nice cara big housea good name冠词只有3个:a, an, thea\an 一个、一间、一台。 the 这,那,这些,那些。the student 这\那个学生the students 这些\那些学生定冠词 the:确定的,不知道的 不定冠词an\an :不确定的,不知道的There is a monk.
2017-11-09 16:41:33 810
原创 为什么英语会有主格和宾格之分?比如:I、me
要弄明白这个问题,首选要了解英语句子的句型结构: 1、主+谓 2、主+谓+宾 3、主+谓+宾+宾 4、主+谓+宾+宾补 3、主+系+表I love you love是动词,这里充当谓语,也叫谓语动词; I是主语,是love这个动作的发起者; you是宾语,是love这个动作的承受着。She is beautiful这个句子没有人发出动作,主要是表达She这个主语的状表或者特征; 句中
2017-11-08 16:13:48 5713
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人