鱼C论坛

 找回密码
 立即注册
查看: 663|回复: 7

[已解决]用request获取https页面出错,请大家指教

[复制链接]
发表于 2020-4-1 21:52:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
 import requests
url = "https://kyfw.12306.cn/otn/czxx/queryByTrainNo?train_no=5u0000G48803&from_station_telecode=NXG&to_station_telecode=BXP&depart_date=2020-03-31"
    headers = {
        "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
        "Content-Type": "application/json;charset=UTF-8",
        "Transfer-Encoding": "chunked",
        "X-Cdn-Src-Port": "1102",
        "X-Via": "1.1 changzhoudianxin63:1 (Cdn Cache Server V2.0)",
        "X-Ws-Request-Id": "5e849878_changzhoudianxi_3647-17242",
        "Connection": "keep-alive",
        "Cookie": "JSESSIONID=98AAAFB104606B95E832E97CD7897063; RAIL_DEVICEID=W0hqKPPHPVNa2Yxz5wGDGHupp1TnExRfzSpcbzd7kYY7VUYwe301xEbw-CcwgXEyOaDJ4dvi_Fggow2sd0mDYqN3Wsbr4Bq2E-Bf--Wk3A7GHTUPojpT0g2EfWZAKfN5xjzZI1-m343uIMAOfKme4NHFmi5UxT6x; RAIL_EXPIRATION=1585664545878; _jc_save_toDate=2020-03-28; _jc_save_wfdc_flag=dc; _jc_save_toStation=%u5317%u4EAC%2CBJP; _jc_save_fromStation=%u6B66%u6C49%2CWHN; _jc_save_fromDate=2020-04-06; route=495c805987d0f5c8c84b14f60212447d; BIGipServerotn=351273482.50210.0000",
        "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36"
              }
    res = requests.get(url,headers=headers)
    print (res)
在浏览器输入url,可以获取具体数据,但是用上述代码只是返回<Response [200]>,请问问题出在哪儿了?
最佳答案
2020-4-1 21:54:47
想打印网站内容可以使用下面的代码:
import requests

url = "https://kyfw.12306.cn/otn/czxx/queryByTrainNo?train_no=5u0000G48803&from_station_telecode=NXG&to_station_telecode=BXP&depart_date=2020-03-31"
headers = {
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
    "Content-Type": "application/json;charset=UTF-8",
    "Transfer-Encoding": "chunked",
    "X-Cdn-Src-Port": "1102",
    "X-Via": "1.1 changzhoudianxin63:1 (Cdn Cache Server V2.0)",
    "X-Ws-Request-Id": "5e849878_changzhoudianxi_3647-17242",
    "Connection": "keep-alive",
    "Cookie": "JSESSIONID=98AAAFB104606B95E832E97CD7897063; RAIL_DEVICEID=W0hqKPPHPVNa2Yxz5wGDGHupp"
              "1TnExRfzSpcbzd7kYY7VUYwe301xEbw-CcwgXEyOaDJ4dvi_Fggow2sd0mDYqN3Wsbr4Bq2E-Bf--Wk3A7GHTU"
              "PojpT0g2EfWZAKfN5xjzZI1-m343uIMAOfKme4NHFmi5UxT6x; RAIL_EXPIRATION=1585664545878; _jc_s"
              "ave_toDate=2020-03-28; _jc_save_wfdc_flag=dc; _jc_save_toStation=%u5317%u4EAC%2CBJP; "
              "_jc_save_fromStation=%u6B66%u6C49%2CWHN; _jc_save_fromDate=2020-04-06; route=495c805987"
              "d0f5c8c84b14f60212447d; BIGipServerotn=351273482.50210.0000",
    "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chr"
                  "ome/80.0.3987.149 Safari/537.36"
}
res = requests.get(url, headers=headers)
print(res.text)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-1 21:53:12 | 显示全部楼层
正常
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-1 21:54:47 | 显示全部楼层    本楼为最佳答案   
想打印网站内容可以使用下面的代码:
import requests

url = "https://kyfw.12306.cn/otn/czxx/queryByTrainNo?train_no=5u0000G48803&from_station_telecode=NXG&to_station_telecode=BXP&depart_date=2020-03-31"
headers = {
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
    "Content-Type": "application/json;charset=UTF-8",
    "Transfer-Encoding": "chunked",
    "X-Cdn-Src-Port": "1102",
    "X-Via": "1.1 changzhoudianxin63:1 (Cdn Cache Server V2.0)",
    "X-Ws-Request-Id": "5e849878_changzhoudianxi_3647-17242",
    "Connection": "keep-alive",
    "Cookie": "JSESSIONID=98AAAFB104606B95E832E97CD7897063; RAIL_DEVICEID=W0hqKPPHPVNa2Yxz5wGDGHupp"
              "1TnExRfzSpcbzd7kYY7VUYwe301xEbw-CcwgXEyOaDJ4dvi_Fggow2sd0mDYqN3Wsbr4Bq2E-Bf--Wk3A7GHTU"
              "PojpT0g2EfWZAKfN5xjzZI1-m343uIMAOfKme4NHFmi5UxT6x; RAIL_EXPIRATION=1585664545878; _jc_s"
              "ave_toDate=2020-03-28; _jc_save_wfdc_flag=dc; _jc_save_toStation=%u5317%u4EAC%2CBJP; "
              "_jc_save_fromStation=%u6B66%u6C49%2CWHN; _jc_save_fromDate=2020-04-06; route=495c805987"
              "d0f5c8c84b14f60212447d; BIGipServerotn=351273482.50210.0000",
    "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chr"
                  "ome/80.0.3987.149 Safari/537.36"
}
res = requests.get(url, headers=headers)
print(res.text)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-1 22:14:50 | 显示全部楼层
你代码中的res 返回的只是response对象,你要查看内容需要print(res.text)  或者print(res.content)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-1 22:15:06 | 显示全部楼层
response对象默认返回的是状态码,为200就是正常
我记得小甲鱼发过一篇帖子,就是各种状态码都是干什么的
可以去看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-1 22:16:19 | 显示全部楼层
zltzlt 发表于 2020-4-1 21:54
想打印网站内容可以使用下面的代码:

确实有了一些新的内容,但是和直接在浏览器查看的数据不一样,请问该怎么办?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-1 22:16:35 | 显示全部楼层
wuqramy 发表于 2020-4-1 22:16
确实有了一些新的内容,但是和直接在浏览器查看的数据不一样,请问该怎么办?

哪里不一样?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-1 22:23:01 | 显示全部楼层

我改了下headers里面的参数,就可以了。谢谢你的回复
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 19:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表