043 Python语法之网络请求urllib

urllib模块

方法

urllib.request.urlopen(网址)

  1. 打开一个网址,返回一个请求对象(request)

request.read()

  1. 返回值是二进制的

request.readline()

  1. 返回值是二进制的
  2. 需要用 decode("utf-8")进行解码

抓取天涯邮箱,逐行读取

import re
import urllib
import urllib.request

mailRegex = re.compile("([A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4})", re.IGNORECASE)
mailList = []
for line in urllib.request.urlopen("http://bbs.tianya.cn/m/post-140-393974-6.shtml"):
    myList = mailRegex.findall(line.decode("utf-8"))
    if myList:
        mailList.extend(myList)

print(mailList)

抓取天涯邮箱,全部读取

import re
import urllib
import urllib.request

mailRegex = re.compile("([A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4})", re.IGNORECASE)
mailList = []
myStr = urllib.request.urlopen("http://bbs.tianya.cn/m/post-140-393974-6.shtml").read()
mailList.extend(mailRegex.findall(myStr.decode("utf-8")))
print(mailList)

股票代码以及股票所在公司名抓取

下载

tup1 = urllib.request.urlretrieve("网址","1.jpg")

urlretrieve()

  1. 参数1:网址
  2. 参数2:目标地址
  3. 返回值一个元组("存储地址", "HttpMessage实例")

股票数据下载

url="http://quotes.money.163.com/service/chddata.html?code=1300133&end=20130523&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP"

链接分析

  1. code=1300133,1代表深市,0代表沪市,后面接着的是股票代码
  2. end=20130523,股票交易日期

下载python库

xml支持

pip install lxml    # lxml支持

处理数据

pip install pandas  # 处理数据

科学计算

pip install numpy   # 科学计算

财经数据接口

pip install tushare # 财经数据接口
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,991评论 19 139
  • 1 前言 作为一名合格的数据分析师,其完整的技术知识体系必须贯穿数据获取、数据存储、数据提取、数据分析、数据挖掘、...
    whenif阅读 18,107评论 45 523
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,184评论 6 13
  • lummo阅读 172评论 0 1
  • 拥抱偶然,持续点开你身边的超链接,不要把时间安排的太满,用70%的时间增值个人的价值,用30%时间拥抱偶然打开超链...
    掏出来搞事阅读 269评论 0 0