http://www.sh-dupai.com

  • 当前位置:8号配资网 > 配资开户 >
  • 多线程获取股票价格,股票的数据一般怎么获取

    欢迎来到8号配资网,下面小编就介绍下多线程获取股票价格,股票的数据一般怎么获取的相关资讯。

    提及网络爬虫,绝大多数人都是会想起应用Scrapy专用工具,可是只是滞留在会应用的环节。为了更好地提升对网络爬虫体制的了解,我们可以手动式完成线程同步的网络爬虫全过程,另外,导入IP代理池开展基础的反爬实际操作。 此次应用天天基金网开展网络爬虫,该网址具备反爬体制,另外总数充足大,线程同步实际效果比较显著。

    多线程获取股票价格,股票的数据一般怎么获取 获得个股历史记录获得股票号股票是什么股票数据个股忽然放量上涨个股获得个股一年数据信息个股数据获取

    提及网络爬虫,绝大多数人都是会想起应用Scrapy专用工具,可是只是滞留在会应用的环节。为了更好地提升对网络爬虫体制的了解,我们可以手动式完成线程同步的网络爬虫全过程,另外,导入IP代理池开展基础的反爬实际操作。

    此次应用天天基金网开展网络爬虫,该网址具备反爬体制,另外总数充足大,线程同步实际效果比较显著。

    # 回到一个能用代理商,文件格式为ip:端口号 # 该插口立即启用github代理池新项目给的事例,故不确保该插口即时能用 # 提议自身构建一个当地代理池,那样获得代理商的速率更快 # 代理池构建github详细地址/github.com/1again/ProxyPool # 构建结束后,把正下方的proxy.1again.cc改为你的your_server_ip,当地构建得话能够写出127.0.0.1或是localhost def get_proxy(): data_json = requests.get("/proxy.1again.cc:35050/api/v1/proxy/?type=2").text data = json.loads(data_json) return data['data']['proxy']

    构建完IP代理池后,大家刚开始下手线程同步抓取数据信息的工作中。一旦应用线程同步,则必须充分考虑数据信息的读写能力次序难题。这儿应用python中的序列queue开展储存基金代码,不一样进程各自从这一queue中获得基金代码,并浏览特定股票基金的数据信息。因为queue的载入和载入是堵塞的,因此 能够保证 该全过程不容易出現载入反复和载入遗失基金代码的状况。

    # 将全部基金代码放进先进先出法FIFO序列中 # 序列的载入和载入全是堵塞的,故在线程同步状况下不容易乱 # 不在应用架构的前提条件下,导入线程同步,提升 抓取高效率 # 建立一个序列 fund_code_queue = queue.Queue(len(fund_code_list)) # 载入基金代码数据信息到序列 for i in range(len(fund_code_list)): #fund_code_list[i]也是list种类,在其中该list中的第0个原素储放基金代码 fund_code_queue.put(fund_code_list[i][0])

    如今,刚开始撰写怎样获得特定股票基金的编码。最先,该涵数务必先分辨queue是不是为空,当不以空的情况下才可开展获得基金数据。另外,当发觉浏览不成功时,则务必将大家不久取下的基金代码再次放返回序列中去,那样才不容易造成 基金代码遗失。

    # 获得基金数据 def get_fund_data(): # 当序列不以空时 while (not fund_code_queue.empty()): # 从序列载入一个基金代码 # 载入是堵塞实际操作 fund_code = fund_code_queue.get() # 获得一个代理商,文件格式为ip:端口号 proxy = get_proxy() # 获得一个任意user_agent和Referer header = {'User-Agent': random.choice(user_agent_list), 'Referer': random.choice(referer_list) } try: req = requests.get("/fundgz.1234567.com.cn/js/" str(fund_code) ".js", proxies={"http": proxy}, timeout=3, headers=header) except Exception: # 浏览失败了,因此 要把大家刚刚取下的数据信息再放回来序列中 fund_code_queue.put(fund_code) print("浏览不成功,试着应用别的代理商浏览")

    当浏览取得成功时,则表明可以取得成功得到 股票基金的有关数据信息。在我们在将这种数据信息存进到一个.csv文件中,会发觉数据信息出現不正确。它是因为线程同步造成 ,因为好几个进程另外对该文件开展载入,造成 失败。因此 必须导入一个线程锁,保证 每一次只有一个进程载入。

    # 申请办理获得锁,此全过程为堵塞等候情况,直至获得锁结束 mutex_lock.acquire() # 增加数据信息载入csv文件,若文档不会有则全自动建立 with open('./fund_data.csv', 'a ', encoding='utf-8') as csv_file: csv_writer = csv.writer(csv_file) data_list = [x for x in data_dict.values()] csv_writer.writerow(data_list) # 释放出来锁 mutex_lock.release()

    到此,绝大多数工作中早已完成了。为了更好地能够更好地完成掩藏实际效果,大家对header开展任意挑选。

    # user_agent目录 user_agent_list = [ 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71 Safari/537.1 LBBROWSER', 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E)', 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.84 Safari/535.11 SE 2.X MetaSr 1.0', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/4.4.3.4000 Chrome/30.0.1599.101 Safari/537.36', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 UBrowser/4.0.3214.0 Safari/537.36' ] # referer目录 referer_list = [ '', '', '', '' ] # 获得一个任意user_agent和Referer header = {'User-Agent': random.choice(user_agent_list), 'Referer': random.choice(referer_list) }

    # 建立一个线程锁,避免 线程同步载入文档时产生紊乱 mutex_lock = threading.Lock() # 线程数为50,在一定范畴内,线程数越多,速率越快 for i in range(50): t = threading.Thread(target=get_fund_data,name='LoopThread' str(i)) t.start()

    根据对线程同步和IP代理池的实践活动实际操作,可以更为深入了解线程同步和网络爬虫的原理。如果你在应用一些爬虫框架的情况下,就可以保证迅速精准定位不正确并处理不正确。

    000056,建信消费理念升级混和,,1.7740,1.7914,0.98, 15:00

    000031,华夏复兴混和,,1.5650,1.5709,0.38, 15:00

    000048,中华双债提高债卷C,,1.2230,1.2236,0.05, 15:00

    000008,嘉实中证500ETF连接 A,,1.4417,1.4552,0.93, 15:00

    000024,大摩双利提高债卷A,,1.1670,1.1674,0.04, 15:00

    000054,鹏华双债增利债卷,,1.1697,1.1693,-0.03, 15:00

    000016,中华纯债债卷C,,1.1790,1.1793,0.03, 15:00

    # 保证 安裝下列库,要是没有,请在python3自然环境下实行pip install 控制模块名 import requests import random import re import queue import threading import csv import json

    完整篇源码储放在github上,有必须的可以下载


    以上全部内容股票资讯sh-dupai.com提供,如果您还想了解更多的关于股票配资股票股票公司的文章,请点击查看股票配资sh-dupai.com的其它文章

  • 本文地址:8号配资网http://www.sh-dupai.com/four/2270.html
  • 上一篇:12年腾讯股票价格,2012腾讯股票多少钱一股 下一篇:云集股票价格新消息,股票新闻新消息
  • 说点什么吧
    • 全部评论(0
      还没有评论,快来抢沙发吧!