从whattomine中的链接接收JSON数据而不抓取HTML

     2023-03-11     151

关键词:

【中文标题】从whattomine中的链接接收JSON数据而不抓取HTML【英文标题】:Recieve JSON data from link in whattomine without scraping HTML 【发布时间】:2018-04-25 18:52:55 【问题描述】:

说明

This link 是您在输入硬件统计信息(哈希率、功率、功率成本等)后被发送到的位置。在顶部栏(在蓝色 Twitter 关注按钮下方)是一个指向在页面加载后创建的 JSON 文件的链接,其中输入了硬件统计信息;单击该 JSON 链接会将您重定向到另一个 URL (https://whattomine.com/asic.json)。

目标

我的目标是在通过终端操作 URL 字符串中的值后直接访问该 JSON 文件。例如,如果我想在这部分 URL 中将哈希率从 100 更改为 150:

[sha256_hr]=100& ---> [sha256_hr]=150&

在 URL 操作(如上,但不限于)之后,我想接收 JSON 输出,以便我可以挑选出所需的数据。

我的代码

咨询 我从 2017 年 6 月开始 Python 编程,请见谅。

import json
import pandas as pd
import urllib2
import requests


hashrate_ghs = float(raw_input('Hash Rate (TH/s): '))
power_W = float(raw_input('Power of Miner (W): '))
electric_cost = float(raw_input('Cost of Power ($/kWh): '))
hashrate_ths = hashrate_ghs * 1000

initial_request = ('https://whattomine.com/asic?utf8=%E2%9C%93&sha256f=true&factor[sha256_hr]=0&factor[sha256_p]=1&factor[cost]=2&sort=Profitability24&volume=0&revenue=24h&factor[exchanges][]=&factor[exchanges][]=bittrex&dataset=Main&commit=Calculate'.format(hashrate_ths, power_W, electric_cost))
data_stream_mine = urllib2.Request(initial_request)

json_data = requests.get('https://whattomine.com/asic.json')
print json_data

我的代码出错

我收到 HTTPS 握手错误。这是我的 Python 新鲜度第二明显的地方:

Traceback (most recent call last):
  File "calc_1.py", line 16, in <module>
    s.get('https://whattomine.com/asic.json')
  File "/Library/Python/2.7/site-packages/requests/sessions.py", line 521, in get
    return self.request('GET', url, **kwargs)
  File "/Library/Python/2.7/site-packages/requests/sessions.py", line 508, in request
    resp = self.send(prep, **send_kwargs)
  File "/Library/Python/2.7/site-packages/requests/sessions.py", line 618, in send
    r = adapter.send(request, **kwargs)
  File "/Library/Python/2.7/site-packages/requests/adapters.py", line 506, in send
    raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='whattomine.com', port=443): Max retries exceeded with url: /asic.json (Caused by SSLError(SSLError(1, u'[SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:590)'),))

感谢您的帮助和时间!

请告知我有关此问题的任何更改或更多信息。

【问题讨论】:

虽然对某些人来说它看起来像是pyOpenSSL version issue,但卸载并重新安装已经解决了这个问题。 SO中另一个较旧的答案要求do the following 非常喜欢@SudheeshSinganamalla。如果您想将其发布为答案,我将非常乐意支持它。您更新 pyOpenSSL 的建议对我有用,我现在收到 &lt;Response [200]&gt; 谢谢! 还没有高兴@garej,我似乎仍然无法超越默认的 JSON 数据;如中,URL 操作未在 JSON 结果中注册。答案帮助我更进一步。我仍然摸不着头脑,希望有人可以帮助我更接近一步,或者为我提供一些时间和经验来完成这额外的一步。 【参考方案1】:

看起来其他一些人也遇到了类似的问题。

虽然对于某些人来说它似乎像pyOpenSSL version issue,但卸载并重新安装已解决了问题。 SO中另一个较旧的答案要求do the following。

【讨论】:

【参考方案2】:

这只是一个评论。以下方法就足够了(Python 3)。

import requests

initial_request = 'http://whattomine.com/asic.json?utf8=1&dataset=Main&commit=Calculate'

json_data = requests.get(initial_request)
print(json_data.json())

这部分的关键点——把.json放在你的initial_request中就足够了。 您可以像在 ? 符号后的查询部分中那样添加所有参数

【讨论】:

从 JSON 响应加载第二个 URL,而不影响 iOS 中的初始 JSON 绑定

】从JSON响应加载第二个URL,而不影响iOS中的初始JSON绑定【英文标题】:LoadasecondURLfromaJSONresponse,withoutaffectingtheinitialJSONbindinginiOS【发布时间】:2016-04-2109:57:46【问题描述】:我正在开发一个使用JSON绑定的原生iOS应用程序。JSON响... 查看详情

如何从 laravel 刀片中的 json 数据创建分页链接

】如何从laravel刀片中的json数据创建分页链接【英文标题】:howtocreatepaginationlinksfromjsondatainlaravelblade【发布时间】:2016-04-0610:23:47【问题描述】:我正在尝试从laravel刀片模板中的json响应创建分页链接。我知道它可以简单地使用p... 查看详情

如何将从服务接收到的 json 数据传递到 Angular 4 的角材料组件中的数组

...如何将从服务接收到的json数据传递到Angular4的角材料组件中的数组【英文标题】:Howtopassjsondatareceivedfromservicetoanarrayincomponentinangularmaterialforangular4【发布时间】:2018-05-1300:42:01【问题描述】:我是Angular4和角度材料的新手,我正... 查看详情

数据表从 API 获取 JSON 而不设置“aaData”

】数据表从API获取JSON而不设置“aaData”【英文标题】:DataTablesgetJSONfromAPIwithoutsetting"aaData"【发布时间】:2012-08-2809:34:42【问题描述】:我正在使用数据表,我得到的数据如示例中所示$(\'.data-table\').dataTable("bProcessing":true,... 查看详情

将数据添加到现有 JSON 文件而不覆盖它

...想法:我想将JSON对象添加到现有JSON文件,但不覆盖文件中的现有数据。uid-003对象应该在现有的uid-xxx条目之后从属于uID。问题:没有任何解决方案可以正常工作。append()方法也返回错误:Attribu 查看详情

只需从 JSON 接收一个数据对象

】只需从JSON接收一个数据对象【英文标题】:JustrecieveoneDataobjectfromJSON【发布时间】:2017-08-2619:07:41【问题描述】:我尝试将地图标记从JSON获取到MapActivity。我只是从JSON中得到第一个,其他的没有显示在我的地图中。我该如何... 查看详情

一个 PHP 脚本让用户从我的网站下载文件而不显示我网站中的实际文件链接?

】一个PHP脚本让用户从我的网站下载文件而不显示我网站中的实际文件链接?【英文标题】:APHPscripttoletusersdownloadafilefrommywebsitewithoutrevealingtheactualfilelinkinmywebsite?【发布时间】:2011-03-1604:59:42【问题描述】:问题说明了一切..我... 查看详情

无法从 JSON 接收数据 - PHPMyAdmin

】无法从JSON接收数据-PHPMyAdmin【英文标题】:Can\'trecievedatafromJSON-PHPMyAdmin【发布时间】:2017-11-2515:18:21【问题描述】:我有一个PHP脚本,用于从BBDD获取一些信息:<?php//Creatingaconnection$con=mysqli_connect("localhost:3306","root","","database"... 查看详情

使用 REST API 从 Web 服务接收 JSON 数据

】使用RESTAPI从Web服务接收JSON数据【英文标题】:ReceiveJSONdatafromawebserviceusingRESTAPI【发布时间】:2017-11-2822:09:01【问题描述】:我需要使用RESTAPI从这个Apihttp://countryapi.gear.host/v1/Country/getCountries接收JSON数据。我需要接收特定国家/... 查看详情

从核心/淘汰赛中的 POST 操作返回 Json 数据

】从核心/淘汰赛中的POST操作返回Json数据【英文标题】:ReturnJsondatafromPOSTactioninCore/knockout【发布时间】:2018-07-2806:52:55【问题描述】:我正在使用.NETCore中的KnockoutJavaScript库。我有以下POST操作,可以从我的视图中成功接收和处... 查看详情

遍历从 ajax / json 接收到的数据

】遍历从ajax/json接收到的数据【英文标题】:Iteratingoverthedatareceivedfromajax/json【发布时间】:2021-12-1504:03:25【问题描述】:以下是我通过ajax获取的数据类型。["model":"blogapp.articles","pk":1,"fields":"title":"RainbowBuildingsinTokyo","slug":"Rainbow... 查看详情

如何从 Reactjs 中的 json 服务器中删除数据

】如何从Reactjs中的json服务器中删除数据【英文标题】:HowcanIdeletethedatafromajsonserverinReactjs【发布时间】:2021-08-0315:43:58【问题描述】:JSON数据链接https://jsoneditoronline.org/#left=cloud.e09cb2f612284a47a28c71a2c813da80如何从JSON数据中删除主... 查看详情

渲染JSON而不替换Jinja中的字符[重复]

】渲染JSON而不替换Jinja中的字符[重复]【英文标题】:RenderJSONwithoutreplacingcharactersinJinja[duplicate]【发布时间】:2015-07-3016:11:36【问题描述】:我有一些Python数据将被发送到JavaScript图表。我将其转储为JSON并将其传递给模板。当我... 查看详情

c_cpp交换链接列表中的节点而不交换数据(代码片段)

查看详情

如何从 Assets 文件夹中解析 StickyHeader RecyclerView 中的 json 数据

】如何从Assets文件夹中解析StickyHeaderRecyclerView中的json数据【英文标题】:HowtoparsejsondataininStickyHeaderRecyclerViewfromAssetsFolder【发布时间】:2021-11-1008:18:16【问题描述】:我想在资产文件夹的粘性标题recyclerview中按日期显示我的JSON... 查看详情

使用 REST 框架从 Django 中的 POST 获取 JSON 数据

】使用REST框架从Django中的POST获取JSON数据【英文标题】:GetJSONdatafromPOSTinDjangowithRESTFramework【发布时间】:2018-06-2508:35:10【问题描述】:我正在尝试在Django中为带有Gspread的Google电子表格构建一个RESTAPI,我遇到了很多问题(因此... 查看详情

PHP REST 服务中的 JSON 格式问题从 AFNetworking 2.0 接收 POST

】PHPREST服务中的JSON格式问题从AFNetworking2.0接收POST【英文标题】:JSONformatissueinPHPRESTservicereceivingPOSTfromAFNetworking2.0【发布时间】:2015-03-2018:21:02【问题描述】:我有一种情况,我使用AFNetworking2.0代码从我的iOS代码中发布一个JSON... 查看详情

使用从服务器接收到的 json 数据填充 html div

】使用从服务器接收到的json数据填充htmldiv【英文标题】:Populateahtmldivwithjsondatareceivedfromaserver【发布时间】:2014-06-1307:11:29【问题描述】:我需要一个htmldiv填充从服务器接收的json数据,这是一个json-rpc服务器,它重新运行applica... 查看详情