Remis Haroon - رامز
Remis Haroon - رامز

Reputation: 3572

py2neo (Neo4j) : py2neo.packages.httpstream.http.SocketError: Operation not permitted

I am running Neo4j 2.2.1 in ubuntu Amazon EC2 instance. When I am trying to connect through python using py2neo-2.0.7, I am getting following error :

py2neo.packages.httpstream.http.SocketError: Operation not permitted

I am able to access the web-interface through http://52.10.**.***:7474/browser/

CODE :-

from py2neo import Graph, watch, Node, Relationship

url_graph_conn = "https://neo4j:[email protected].**.***:7474/db/data/"
print url_graph_conn
my_conn = Graph(url_graph_conn)
babynames = my_conn.find("BabyName")
for babyname in babynames:
    print 2

Error message :-

https://neo4j:[email protected].**.***:7474/db/data/
Traceback (most recent call last):
  File "C:\Users\rharoon002\eclipse_workspace\peace\peace\core\graphconnection.py", line 39, in <module>
    for babyname in babynames:
  File "C:\Python27\lib\site-packages\py2neo\core.py", line 770, in find
    response = self.cypher.post(statement, parameters)
  File "C:\Python27\lib\site-packages\py2neo\core.py", line 667, in cypher
    metadata = self.resource.metadata
  File "C:\Python27\lib\site-packages\py2neo\core.py", line 213, in metadata
    self.get()
  File "C:\Python27\lib\site-packages\py2neo\core.py", line 258, in get
    response = self.__base.get(headers=headers, redirect_limit=redirect_limit, **kwargs)
  File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 966, in get
    return self.__get_or_head("GET", if_modified_since, headers, redirect_limit, **kwargs)
  File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 943, in __get_or_head
    return rq.submit(redirect_limit=redirect_limit, **kwargs)
  File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 433, in submit
    http, rs = submit(self.method, uri, self.body, self.headers)
  File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 362, in submit
    raise SocketError(code, description, host_port=uri.host_port)
py2neo.packages.httpstream.http.SocketError: Operation not permitted

Upvotes: 2

Views: 1430

Answers (1)

Martin Preusse
Martin Preusse

Reputation: 9369

You are trying to access neo4j via https on the standard port for http (7474):

url_graph_conn = "https://neo4j:[email protected].**.***:7474/db/data/"

The standard port for a https connection is 7473. Try:

url_graph_conn = "https://neo4j:[email protected].**.***:7473/db/data/"

And make sure you can access the web interface via https:

https://52.10.**.***:7473/browser/

You can change/see the port settings in your neo4j-server.properties file.

Upvotes: 4

Related Questions