미국의 주를 소켓으로 읽고 구문 분석하기
소켓은 다른 모든 스트림과 마찬가지로, 스트림 작업을 사용하여 읽고 해석 할 수 있습니다.
텍스트 데이터를 포함하는 서버에 대한 연결을 엽니다.
In[1]:=
socket = SocketConnect["http://exampledata.wolfram.com"]
Out[1]=
미국의 주를 모두 포함하는 텍스트 파일에 대한 GET 요청을 포함하는 명령 행을 씁니다.
In[2]:=
WriteLine[socket, "GET /50states.txt HTTP/1.0 \n"]
응답의 제1행을 읽습니다.
In[3]:=
ReadLine[socket]
Out[3]=
나머지 행을 모두 읽습니다.
In[4]:=
output = ReadString[socket];
문자열의 중간을 조사하여 구분자로 새로운 줄 바꿈 된 주 목록의 처음을 찾습니다.
In[5]:=
StringTake[output, {277, 347}]
Out[5]=
SemanticImportString을 사용하여 출력을 구문 분석하고 구문 분석 할 수 없는 요소는 제거합니다.
In[6]:=
states = DeleteMissing[SemanticImportString[output]]
Out[6]=
실제로 모든 국가가 포함되어 있는지 확인합니다.
In[7]:=
Equal[Length[states],
Length[EntityList[
EntityClass["AdministrativeDivision", "USStatesAllStates"]]]]
Out[7]=
스트림을 닫습니다.
In[8]:=
Close[socket]