Python数据挖掘01-环境搭建

Python是数据挖掘的利器,这里自己边学习边记录下过程。以下操作在Windows或Mac系统下均可进行,Linux下暂未测试。

1、PyCharm安装

Python开发的IDE有很多,这里比较推荐PyCharm。PyCharm有专业版和社区版,两者均可。安装后新建test.py测试运行

print 'Hello Python!'

2、MySQL安装

官网下载系统对应的版本安装,安装完成后在命令提示行输入"mysql",如果返回欢迎信息,则成功运行。如果命令不被识别,在Windows系统下需要把MySQL路径加入系统环境变量。Mac也一样,或者输入 /usr/local/mysql/bin/mysql -uroot -p 然后输入密码,进入MySQL。
测试是否安装成功:

show databases;

运行结果:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

3、MySQLdb安装

为了在Python中操作MySQL,需要安装MySQLdb。Windows系统下直接下载安装包,或者在PyCharm中添加即可。Mac系统在PyCharm中添加可能会提示错误,这时可以在终端中安装:
sudo -H pip install MySQL-python
如果提示EnvironmentError: mysql_config not found,则运行一下以下命令
export PATH=$PATH:/usr/local/mysql/bin
安装完成后,在PyCharm中测试是否运行正常:

import MySQLdb
try:
    conn=MySQLdb.connect(host='localhost',user='root',passwd='mypassword',db='mysql')
    cur=conn.cursor()
    cur.execute('select Host from user')
    print cur.fetchall()
    cur.close()
    conn.close()
except MySQLdb.Error,e:
     print "Mysql Error %d: %s" % (e.args[0], e.args[1])

运行结果:

(('localhost',), ('localhost',))

这是一个Tuple类型的数据

4、常用Python库

urllib2 #自带网络请求库
re #正则表达式
requests #第三方网络请求库,需手动添加
BeautifulSoup #网页解析库,需手动添加

5、初步试验

功能:从智联招聘网站上抓取部分数据信息

#encoding=utf-8
import requests
from bs4 import BeautifulSoup
headers={'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36 QQBrowser/4.1.4132.400'}
payload={'jl':'深圳','kw':'python','isadv':'0','sg':'0dfd2337bd8a43168ee25385938feda9','p':'1'}
r=requests.get('http://sou.zhaopin.com/jobs/searchresult.ashx',params=payload,headers=headers)
soup=BeautifulSoup(r.text)
list1=soup.find_all('table')
for li in list1:
    jobname=li.find('td',class_='gsmc')
    jobsalary=li.find('td',class_='zwyx')
    joblocation=li.find('td',class_='gzdd')
    if jobname:
        print jobname.a.string
    if jobsalary:
        print jobsalary.string
    if joblocation:
        print joblocation.string

运行结果:

创游时空网络科技(深圳)有限公司
8001-10000
深圳
深圳市程序猿教育科技有限公司
4001-6000
深圳 - 龙华新区
深圳市友联创科技有限公司
6001-8000
深圳 - 龙华新区

-2016年10月26日

你可能感兴趣的:(Python数据挖掘01-环境搭建)