更多>>关于我们
西安鲲之鹏网络信息技术有限公司从2010年开始专注于Web(网站)数据抓取领域。致力于为广大中国客户提供准确、快捷的数据采集相关服务。我们采用分布式系统架构,日采集网页数千万。我们拥有海量稳定高匿HTTP代理IP地址池,可以有效获取互联网任何公开可见信息。
您只需告诉我们您想抓取的网站是什么,您感兴趣的字段有哪些,你需要的数据是哪种格式,我们将为您做所有的工作,最后把数据(或程序)交付给你。
数据的格式可以是CSV、JSON、XML、ACCESS、SQLITE、MSSQL、MYSQL等等。
更多>>技术文章
ChatGPT越来越火,特别是随着ChatGPT官方API的发布,引得很多国内的技术人员都跃跃欲试。但很可惜,ChatGPT API不对国内(IP)开放。如果直接调用官方API,会出现无法连接到api.openai.com的错误,类似下图所示。
那该如何解决这个问题呢?最简单的方案就是使用国外代理IP(建议使用socks5类型的)。即将本地客户端与ChatGPT API之间的通信,交由国外IP来转发。这样就可以绕过ChatGPT对国内IP的限制了。代理IP可以在我们的网站(https://hk.iprent.cn/us-dedicated-http-proxies.html)上联系客服购买。
美中不足的是ChatGPT的openai库并没有提供设置代理IP的接口,难道为了设置个代理还要修改openai库的代码不成?这太麻烦了,后期也不便于更新。在简单查看了openai代码后发现openai库使用了requests库来进行HTTP交互。那么我们只要给requests库设置全部代理,就可以在不对openai代码进行丝毫修改的前提下实现我们的目的。
我们先来看一下如何给requests库设置全局代理,下面直接给出代码:
# coding: utf-8 # 给requests库设置全局代理测试 import os import requests # requests使用Socks5代理如果出现“Missing dependencies for SOCKS support”异常,安装pysocks即可 PROXY = 'socks5h://***:***@*.*.*.*:*' os.environ['HTTP_PROXY'] = os.environ['http_proxy'] = PROXY os.environ['HTTPS_PROXY'] = os.environ['https_proxy'] = PROXY os.environ['NO_PROXY'] = os.environ['no_proxy'] = '127.0.0.1,localhost,.local' # 设置成功的话,下面回显的IP将是代理IP的IP print(requests.get('http://httpbin.org/ip').text)
下面我们再来试一下加过代理之后的ChatGTP API的调用情况,代码如下:
# coding: utf-8 # 通过代理IP调用ChatGPT API测试 import os import requests import openai openai.api_key = '**************************************' # 给requests库设置全局代理 PROXY = 'socks5h://***:***@*.*.*.*:*' os.environ['HTTP_PROXY'] = os.environ['http_proxy'] = PROXY os.environ['HTTPS_PROXY'] = os.environ['https_proxy'] = PROXY os.environ['NO_PROXY'] = os.environ['no_proxy'] = '127.0.0.1,localhost,.local' messages = [{ "role": "user", "content": "100以内含有8的数有哪些?" }] completion = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=messages ) msg = completion.get("choices")[0]["message"]["content"] print(msg)
成功调用,返回信息如下图所示。