Язык Wolfram Language

Системные функциональные возможности системы

Чтение и анализ штатов США при помощи сокетов

Сокеты, как и другие потоки, могут читаться и анализироваться через операции с потоками.

Откройте соединение с сервером, содержащим текстовую информацию.

In[1]:=
Click for copyable input
socket = SocketConnect["http://exampledata.wolfram.com"]
Out[1]=

Запишите строку, содержащую GET запрос для текстового файла со всеми штатами США.

In[2]:=
Click for copyable input
WriteLine[socket, "GET /50states.txt HTTP/1.0 \n"]

Считайте первую строку ответа.

In[3]:=
Click for copyable input
ReadLine[socket]
Out[3]=

Считайте все оставшиеся строки.

In[4]:=
Click for copyable input
output = ReadString[socket];

Проверьте середину строки для определения начала новой строки в спискe штатов.

In[5]:=
Click for copyable input
StringTake[output, {277, 347}]
Out[5]=

Используйте SemanticImportString для анализа выходных данных и удалите любые элементы, которые не смогли пройти анализ.

In[6]:=
Click for copyable input
states = DeleteMissing[SemanticImportString[output]]
Out[6]=

Проверьте, что все штаты были действительно перечислены.

In[7]:=
Click for copyable input
Equal[Length[states], Length[EntityList[ EntityClass["AdministrativeDivision", "USStatesAllStates"]]]]
Out[7]=

Закройте поток.

In[8]:=
Click for copyable input
Close[socket]

Родственные примеры

de en es fr ja ko pt-br zh