[CODE]stock项目

目标

抓取 google finance的特定股票的数据,提取过去两年最高点,最低点和当前点,用当前点反应在最高和最低这个区间内的百分位置,例如上证最高5000点,最低2000, 现在3000,那么档位是(3000-2000)/(5000-2000).

测试版项目保存在 idehe.com/stock

难点记录

  • Beautiful soup 提取网页,用 find_all 提取所有tr,再同样提取出td数据,用 string提取td类中的值即可。
  • String.replace 删除字符串中的,号
  • 写入文件 a为追加写入, w为清空写入
  • Str int float 格式化字符串 type查看变量格式

后续

  • 交互式网页提交日期
  • 用户数据库包括指定股票
Evernote helps you remember everything and get organized effortlessly. Download Evernote.

[Code] 修个BUG

现在做了一个抓取低风险收益的网站,在这里:http://42.120.16.247/

抓取的时候发现分级基金A的功能不工作了,仔细打开数据发现是网站栏目的“理论
下折收益”的里面的内容多了一个“-”,不能转换为float形式而出错。找到问题了坚决就简单!if 判断一下值然后改成赋值为-999,哈哈,其他else保持原样,就可以了!

Python爬虫内容,好玩好用的!

[Code]Git 快速开始

快速开始一个项目,从最简单的操作开始:

先在github上面创建一个repository获得相应的http链接:
  • https://github.com/hechao/python, 这里就不考虑ssh了,这样用起来比较快,简单
克隆项目:
  • git clone https://github.com/hechao/python
  • 拷贝项目下来,可能是个空项目,那么就在线随便编辑一下把。
  • 然后cd 进 这个目录就可以开始操作了
编辑,添加到index缓存,commit:
  • git add . 可以添加缓存所有的文件
  • git commit -m ‘…’ 给缓存文件添加备注。。
  • git push 就可以直接推送到github上面了
其他操作
  • 对应相应的删除文件最好用git mv, git rm…
Branch 操作
  • git checkout newbranch 创建一个新的branch
  • 正常添加操作文件, 这里我创建新文件
  • git push origin newbranch 其中orign 表示远程, newbranch 为分支
  • 添加文件,然后切换分支可以看出文件的不同,添加了新的文件branch.txt

operation git branch

 

本地分支操作
  • git merge [branch-name] 合并特定分支的历史到当前分支
  • git branch 查看本地分支
  • git branch -d [branch-name] 删除特定的本地分支

远程分支

  • git branch -r #刪除遠端 Branch
  • git push origin :new_branch # 刪除遠端的 branch 注意空格

[Scrawler] 解决雪球爬虫返回403

正常情况下使用urllib2.urlopen 会返回urllib2.HTTPError: HTTP Error 400: Bad Request 错误,需要的cookie 行信息,如果手动填写的话会有过期的问题。
现在终于找到解决办法,用cooklib里面的cookiejar先获取cookie 然后用urlopen就好啦。具体程序看我的python练习档内的jisi2/cookie_get.py文件:https://github.com/hechao/python

*** 更新一下,雪球网站的链接http://xueqiu.com/v4/stock/quote.json?code=SH000001%2CSZ399001%2CHKHSI%2CDJI30 是无法直接打开获得cookie的,依然返回400错误。

解决方法就是,所以程序里面先用opener.open打开一下雪球主页,再opener.open这个链接就可以了,应该是传递了cookie的原因, yeah.

改造成一个def了

[python]
#! /usr/bin/python
#-*- encoding: utf-8 -*-
import cookielib, urllib2

def content(index_url):
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))

# default User-Agent (‘Python-urllib/2.6’) will *not* work
opener.addheaders = [
(‘User-Agent’, ‘Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36’),
]
#首先打开主页加载cookie, 然后传递给他index_url作为cookie
home = opener.open(‘http://xueqiu.com’)
quote = opener.open(index_url)
content = quote.read()
return content
[/python]