vitamin 发表于 2020-6-6 15:19:54

跪求大佬,socket请求返回bad request 。。。

代码如下:
import ssl
import socket

host = "www.douban.com"
port = 443
User_Agent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36'
client_sk = ssl.wrap_socket(socket.socket())

client_sk.connect((host,port))

request = 'GET HTTP/1.1\r\nhsot:{} User-Agent:{}\r\n\r\n'.format(host,User_Agent).encode('utf8')

client_sk.send(request)

response = client_sk.recv(1024).decode('utf8')
print(response)

结果如下:
HTTP/1.1 400 Bad Request
Date: Thu, 04 Jun 2020 05:19:43 GMT
Content-Type: text/html
Content-Length: 150
Connection: close
Server: dae

<html>
<head><title>400 Bad Request</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx</center>
</body>
</html>
求解求解。。。。

xiaosi4081 发表于 2020-6-6 15:25:06

本帖最后由 xiaosi4081 于 2020-6-6 15:29 编辑

错误:User_Agent
正确:User-Agent
import ssl
import socket

host = "www.douban.com"
port = 443
User-Agent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36'
client_sk = ssl.wrap_socket(socket.socket())

client_sk.connect((host,port))

request = 'GET HTTP/1.1\r\nhsot:{} User-Agent:{}\r\n\r\n'.format(host,User-Agent).encode('utf8')

client_sk.send(request)

response = client_sk.recv(1024).decode('utf8')
print(response)

vitamin 发表于 2020-6-6 15:26:47

本帖最后由 vitamin 于 2020-6-6 15:30 编辑

xiaosi4081 发表于 2020-6-6 15:25
错误:User_Agent
正确:User-Agent



User_Agent这东西做变量,传给douban还是User-Agent {:5_92:}

塔利班 发表于 2020-6-6 15:44:45

import ssl
import socket

host = "www.douban.com"
port = 443
User_Agent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36'
client_sk = ssl.wrap_socket(socket.socket())

client_sk.connect((host,port))

request = 'GET / HTTP/1.1\r\nHost:{}\r\nUser-Agent:{}\r\n\r\n'.format(host,User_Agent).encode('utf8')

client_sk.send(request)

response = client_sk.recv(4096).decode('utf8')
print(response)
有几处拼写不对,还有缺少换行,你也没写请求什么资源,去看看网页的请求头view source

vitamin 发表于 2020-6-6 19:11:55

塔利班 发表于 2020-6-6 15:44
有几处拼写不对,还有缺少换行,你也没写请求什么资源,去看看网页的请求头view source

感谢。我就是不明白为什么反馈给我bad request呢。

Twilight6 发表于 2020-6-6 19:53:51

vitamin 发表于 2020-6-6 19:11
感谢。我就是不明白为什么反馈给我bad request呢。

很可能是被反爬了 , 你试着在请求头那加上 cookie

vitamin 发表于 2020-6-6 20:50:42

Twilight6 发表于 2020-6-6 19:53
很可能是被反爬了 , 你试着在请求头那加上 cookie

{:5_100:}太可恨了,一个评论网站也反扒。。。让我的小实验怎么做。。。

Twilight6 发表于 2020-6-6 20:52:52

vitamin 发表于 2020-6-6 20:50
太可恨了,一个评论网站也反扒。。。让我的小实验怎么做。。。

加上 cookie 试试还有看看有没有 Referer 也加到headers 里面去

vitamin 发表于 2020-6-6 22:12:39

Twilight6 发表于 2020-6-6 20:52
加上 cookie 试试还有看看有没有 Referer 也加到headers 里面去

ok。多谢指点。{:5_111:}
页: [1]
查看完整版本: 跪求大佬,socket请求返回bad request 。。。