Я пытаюсь запросить у пользователя URL-адрес, чтобы он мог читать любую страницу, но при запуске моей программы я все время получаю ошибку 400 ошибок.Что такое синтаксис для отправки запроса GET-сокета с пользовательским вводом
Я установил соединение сокета с хостом с моего ввода. Но когда я пытаюсь отправить запрос GET, он взрывается ко мне с ошибкой 400 ошибок. Что мне делать, пожалуйста?
import socket
mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
url = raw_input('Enter - ')
splt = url.split('/')
mysock.connect((splt[2], 80))
mysock.send('GET url \n\n')
except:
print 'invalid URL'
while True:
data = mysock.recv(512)
if (len(data) < 1):
break
print data
mysock.close()
Возможно, вы захотите использовать [urllib2] (https://docs.python.org/2/library/urllib2.html) или [запросы] (http://docs.python-requests.org/en/master /). – albert
Вы * определенно * хотите использовать 'запросы' вместо этого. –
, пожалуйста, помогите мне решить эту проблему, используя urllib2. запрашивает у пользователя URL, чтобы он мог читать любую веб-страницу. Вы можете использовать split ('/'), чтобы разбить URL-адрес на своих компонентов, чтобы вы могли извлечь имя хоста для вызова сокета. Добавьте проверку ошибок с помощью try и за исключением обработки условия, когда пользователь вводит неверно отформатированный или несуществующий URL-адрес. –