最近再一家互联网公司实习,原来是使用java,头要求从网页上抓取数据,做成可视化页面。要求使用python脚本

参考的资料 :python简明教程  百度一下,就可以搜到电子版本;是以2.7为基础的,非常适合初学者,不厚,却没有那么多废话

公司询问之后,发现,虽然python已经升级到3.3以上,可是大部分的公司都还在使用python2.7,是出于稳定性的考虑。除非出现新的无法解决的bug,才会小心的升级到最近的可以解决问题的稳定版本。

为了从网页中趴取数据:使用了python+ 一种html网页解析神器具:beautifulsoup

我使用的mac,mac自己集成了py2.7,可以安装py3.3, 建议不要吧默认设为py 3.3,会导致无法安装easy_install,pip

可以使用pip beautifulsoup 来安装sudo pip install beautifulsoup, 需要用到系统权限,所以要加sudo

关于beautifulsoup的使用可以参考以下两个连接:

官方中文教程:点击打开链接

还有一篇博客:http://www.cnblogs.com/twinsclover/archive/2012/04/26/2471704.html

推荐使用的是 PyCharm,社区免费版本已经足够使用。公司里大部分用的都是这个,还有一部分坚守再sublime text上

mport urllib
from BeautifulSoup import BeautifulSoupurl = "连接";
allData=""content = urllib.urlopen(url).read()
soup = BeautifulSoup(content)tags1 = soup.findAll('tr', {"class": "even right"})
tags2 = soup.findAll('tr', {"class": "odd right"})

比如上面的就是 利用写的一些代码,是要取出网页中class 为even right 的所有tr

和所有class 为odd right的所有tr

取出之后就可以打印出他的内容,例如:

for tag in tags2:t= tag.contents[1]s = t.text #获取tag中得内容print "\t" + s,allData += "\t" + st= tag.contents[2]s = t.textprint "\t" + s,allData += "\t" + s,t= tag.contents[3]s = t.textprint "\t" + s, allData += "\t" + s,
open("/Users/charleszhu/alldata.csv", "w").write(allData)

这里值得注意的是 python中使用输出如何不换行的一个小技巧就是:print之后,加一个逗号,就可以不换行输入,若要换行,可以输出“\n”,或者直接print不加逗号。
同时python中得for循环,是按照缩进,来判断层次的,需要格外注意~再PyCharm中,写中文注释运行时候可能会报错,在文件头上加上 #coding:utf-8(带上#)就可以确保运行不报错

同时 你可以将你的内容全部写入文件中 就可以再对应位置写入相应文档。

python学习笔记 BeautifulSoup趴数据相关推荐

  1. Head First Python学习笔记4——处理数据

    有这么几组数据需要你处理: James 2-34,3:21,2.34,2.45,3.01,2:01,2:01,3:10,2-22 Julia 2.59,2.11,2:11,2:23,3-10,2-23 ...

  2. Python学习笔记 - 探索字符串数据操作

    大家好,我是Mr数据杨,设想一下,我们身处<三国演义>的热血世界,赵云.曹操.孔明都是我们的亲密朋友.在这个世界里可以用Python的字符串 + 运算符来合并孔明的锦囊妙计和赵云的勇武之谋 ...

  3. Python学习笔记:一维数据的插值

    插值是离散函数逼近的重要方法,利用它可通过函数在有限个点处的取值状况,估算出函数在其它点处的近似值.与拟合不同的是,要求曲线通过所有的已知数据.SciPy的interpolate模块提供了许多对数据进 ...

  4. Python学习笔记——数据分析之数据可视化工具实战案例:世界高峰数据可视化

    世界高峰数据可视化 (World's Highest Mountains) 参考:https://www.kaggle.com/alex64/d/abcsds/highest-mountains/le ...

  5. Python学习笔记_1_基础_2:数据运算、bytes数据类型、.pyc文件(什么鬼)

    Python学习笔记_1_基础_2:数据运算.bytes数据类型..pyc文件(什么鬼) 一.数据运算 Python数据运算感觉和C++,Java没有太大的差异,百度一大堆,这里就不想写了.比较有意思 ...

  6. Python学习笔记:用Python获取数据(本地数据与网络数据)

    Python学习笔记:用Python获取数据(本地数据与网络数据) 一.用Python获取本地数据 读写文件(三种基本模式:r, w, a) 1.写文件 2.读文件

  7. Python学习笔记:使用PIL批量合成jpg+png图片,用于水印、合并图片,生成YOLO数据集+标注数据等等

    [Python学习笔记] 使用PIL,批量合成jpg+png图片,用于水印.合并图片,生成YOLO数据集+标注数据等等 起因:在了解很多关于YOLOv5的相关内容,于是尝试着去训练自己的游戏目标检测模 ...

  8. Python学习笔记---merge和concat数据合并(1)

    Python学习笔记-merge和concat数据合并(1) Python学习笔记-merge和concat数据合并(2) 文章目录 Python学习笔记---merge和concat数据合并(1) ...

  9. 【Python学习笔记—保姆版】第四章—关于Pandas、数据准备、数据处理、数据分析、数据可视化

    第四章 欢迎访问我搞事情的[知乎账号]:Coffee 以及我的[B站漫威剪辑账号]:VideosMan 若我的笔记对你有帮助,请用小小的手指,点一个大大的赞哦. #编译器使用的是sypder,其中&q ...

  10. 【Python学习笔记】b站@同济子豪兄 用pytorch搭建全连接神经网络,对Fashion-MNIST数据集中的时尚物品进行分类

    [Python学习笔记]原作b站@同济子豪兄 用pytorch搭建全连接神经网络,对Fashion-MNIST数据集中的时尚物品进行分类 跟着b站@同济子豪兄的视频自学写的代码,内容是用pytorch ...

最新文章

  1. 通俗易懂的Harris 角点检测
  2. 写给大家看的机器学习书【Part1】什么是机器学习?机器学到的到底是什么?
  3. Linux GCC lib库相互引用,互相依赖(交叉引用)链接解决办法
  4. Linked List Cycle II - LeetCode
  5. python识别人脸多种属性_深度学习人脸识别仅9行python代码实现?同时高效处理100张相片?...
  6. 预处理阶乘和阶乘逆元_计算数字的阶乘| 8086微处理器
  7. 【Linux入门学习之】vi/vim编辑器必知必会
  8. Java写js的Ajax代码_用JS写的一个Ajax库(实例代码)
  9. 选修课期末html作业,中南大学生命科学导论选修课期末作业
  10. 定制你自己的CRF模型以及JAVA实现的Word2Vec模型和一些java版NLP的工具
  11. c语言0x00如何不截断_数组越界及其避免方法,C语言数组越界详解
  12. RTI_DDS自定义插件开发 4 接收方
  13. Linux修改SSH端口号
  14. A certificate chain processed, but terminated in a root certificate which is not trusted...
  15. l2逐笔接口更新的频率是多少?
  16. hive中reduce类函数说明
  17. 电池续航时间增10倍
  18. 我去!三面字节跳动,竟次次败,带薪摸鱼偷刷阿里老哥的面试宝典,成功上岸!
  19. InnoDB关键特性之插入缓冲
  20. mysql 跨服务器复制_mysql数据库跨服务器间复制与迁移

热门文章

  1. 日立6TB充氦硬盘详细规格、实物照片
  2. 解决win10每次重启后桌面图标排列混乱的问题。
  3. Autovue 问答
  4. webrtc视频卡顿分析一本地视频卡顿
  5. 三人表决器实验报告总结_三人表决器实验报告..doc
  6. Spark开发环境的搭建(一)
  7. 什么是“决策表”?什么是“决策树”?
  8. iOS制作银联支付SDK过程
  9. UE4 Chunk分块
  10. 浅析中国汽车融资租赁行业