python中的Web客户端无法正常工作

黛比·莫汉蒂

我编写了一个python代码,该代码将通过连接到端口80并发送GET http请求来从Web服务器获取数据。但这并没有给我网页的数据,而是给了我一个说“网页已移动”的html代码。

请帮我

下面是代码和示例输出

import socket

def web_client():
    host=str(input("\nEnter the site from which you want to recieve data \n\n -> "))
    port=80
    s=socket.socket()
    ip=socket.gethostbyname(host)
    s.connect((ip, port))
    print("\nconnection successful with "+ str(host)+" on ip "+str(ip))
    msg="GET / HTTP/1.1\r\n\r\n"
    encoded_msg=bytes(msg, "utf-8")
    s.send(encoded_msg)
    data=s.recv(2048)
    decoded_data=data.decode("utf-8")
    print("\n"+decoded_data)

web_client()

我在输入“ www.google.com”时得到的输出如下

Enter the site from which you want to recieve data 

 -> www.google.com

connection successful with www.google.com on ip 216.58.220.36

HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Location: http://www.google.co.in/?gfe_rd=cr&ei=k09IVbiMKq_v8wez3oGICw
Content-Length: 261
Date: Tue, 05 May 2015 05:05:23 GMT
Server: GFE/2.0
Alternate-Protocol: 80:quic,p=1

<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE></HEAD><BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="http://www.google.co.in/?gfe_rd=cr&amp;ei=k09IVbiMKq_v8wez3oGICw">here</A>.
</BODY></HTML>
丹尼尔·雷日科夫(Daniil Ryzhkov)

Google.com尝试将您重定向到区域域。socket软件包不支持HTTP重定向(您应该自己实现)。最简单的解决方案是安装请求库:

pip install requests

使用此库进行HTTP请求真的很容易:

import requests
site = raw_input("\nEnter the site from which you want to receive data \n\n -> ")
r = requests.get(site, allow_redirects=True)
print r.headers
print r.content

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python TCP客户端无法正常工作

来自分类Dev

客户端验证无法正常工作

来自分类Dev

GCM Android客户端无法正常工作

来自分类Dev

Nginx的真实客户端IP无法正常工作

来自分类Dev

dustjs渲染客户端无法正常工作

来自分类Dev

简单的smack android客户端无法正常工作?

来自分类Dev

TestHazelcastFactory客户端模拟无法正常工作

来自分类Dev

JMeter:POST导入在REST客户端中无法正常工作

来自分类Dev

SSL客户端证书不是由python'requests'库或s_client发送的,但是在Web浏览器中可以正常工作

来自分类Dev

无法让RabbitMQ Clojure客户端工作

来自分类Dev

Java聊天程序:由于空指针异常,客户端类无法正常工作

来自分类Dev

我的客户端服务器代码无法正常工作

来自分类Dev

从Windows客户端连接到已安装的Samba的Ubuntu 18.04无法正常工作

来自分类Dev

Dart / Flutter WebSocket服务器/客户端在同一侧无法正常工作

来自分类Dev

Socket.io客户端重新连接无法正常工作

来自分类Dev

我的服务器/客户端项目无法正常工作

来自分类Dev

升级到15.10后,我的miredo客户端无法正常工作

来自分类Dev

remmina桌面客户端无法正常工作,显示登录失败

来自分类Dev

流星客户端查找由于$ eq而无法正常工作

来自分类Dev

Signalr无法在控制器上正常工作,我认为它找不到客户端

来自分类Dev

Visual Studio“添加REST API客户端”无法正常工作

来自分类Dev

让 Google 客户端在 Lumen 中工作

来自分类Dev

Eclipse Pydev自动完成功能无法正常工作并出现错误:java.lang.RuntimeException:python客户端仍未连接回Eclipse Java vm

来自分类Dev

REstful Web服务中的客户端

来自分类Dev

客户端证书可以在curl中工作,但不能在Python中工作

来自分类Dev

ASP.NET 4.5 Ajax在本地可正常运行,但在Web服务器中托管时Ajax客户端框架无法加载

来自分类Dev

如果客户端只有一个核心 CPU,Web Worker 是否可以正常工作?

来自分类Dev

Outlook Mail加载项API在Web和Outlook客户端中的工作方式不同

来自分类Dev

聊天中的Python客户端

Related 相关文章

  1. 1

    Python TCP客户端无法正常工作

  2. 2

    客户端验证无法正常工作

  3. 3

    GCM Android客户端无法正常工作

  4. 4

    Nginx的真实客户端IP无法正常工作

  5. 5

    dustjs渲染客户端无法正常工作

  6. 6

    简单的smack android客户端无法正常工作?

  7. 7

    TestHazelcastFactory客户端模拟无法正常工作

  8. 8

    JMeter:POST导入在REST客户端中无法正常工作

  9. 9

    SSL客户端证书不是由python'requests'库或s_client发送的,但是在Web浏览器中可以正常工作

  10. 10

    无法让RabbitMQ Clojure客户端工作

  11. 11

    Java聊天程序:由于空指针异常,客户端类无法正常工作

  12. 12

    我的客户端服务器代码无法正常工作

  13. 13

    从Windows客户端连接到已安装的Samba的Ubuntu 18.04无法正常工作

  14. 14

    Dart / Flutter WebSocket服务器/客户端在同一侧无法正常工作

  15. 15

    Socket.io客户端重新连接无法正常工作

  16. 16

    我的服务器/客户端项目无法正常工作

  17. 17

    升级到15.10后,我的miredo客户端无法正常工作

  18. 18

    remmina桌面客户端无法正常工作,显示登录失败

  19. 19

    流星客户端查找由于$ eq而无法正常工作

  20. 20

    Signalr无法在控制器上正常工作,我认为它找不到客户端

  21. 21

    Visual Studio“添加REST API客户端”无法正常工作

  22. 22

    让 Google 客户端在 Lumen 中工作

  23. 23

    Eclipse Pydev自动完成功能无法正常工作并出现错误:java.lang.RuntimeException:python客户端仍未连接回Eclipse Java vm

  24. 24

    REstful Web服务中的客户端

  25. 25

    客户端证书可以在curl中工作,但不能在Python中工作

  26. 26

    ASP.NET 4.5 Ajax在本地可正常运行,但在Web服务器中托管时Ajax客户端框架无法加载

  27. 27

    如果客户端只有一个核心 CPU,Web Worker 是否可以正常工作?

  28. 28

    Outlook Mail加载项API在Web和Outlook客户端中的工作方式不同

  29. 29

    聊天中的Python客户端

热门标签

归档