source.py 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #encoding:UTF8
  2. from dataSource.setttings import *
  3. import requests
  4. import json
  5. import pymysql
  6. import pymongo
  7. from py2neo import Graph,NodeMatcher
  8. import tablestore
  9. def solrQuery(collection,args):
  10. if collection in solr_collections:
  11. _arg = ""
  12. for k,v in args.items():
  13. _arg += "&%s=%s"%(k,v)
  14. _arg = _arg[1:]
  15. url = "%s%s/select?%s"%(solr_collections[collection],collection,_arg)
  16. resp = requests.get(url)
  17. if resp.status_code==200:
  18. return json.loads(resp.content.decode())
  19. return None
  20. def solrQuery_url(url):
  21. resp = requests.get(url)
  22. if resp.status_code==200:
  23. return json.loads(resp.content.decode())
  24. return None
  25. def getConnection_mysql(db=None):
  26. if db is None:
  27. db = mysql_db
  28. connect = pymysql.Connect(host=mysql_host, port=mysql_port, db=db, user=mysql_user, passwd=mysql_pass)
  29. return connect
  30. def getConnection_testmysql(db=None):
  31. if db is None:
  32. db = test_mysql_db
  33. connect = pymysql.Connect(host=test_mysql_host, port=test_mysql_port, db=db, user=test_mysql_user, passwd=test_mysql_pass)
  34. return connect
  35. def getConnection_oracle():
  36. import cx_Oracle
  37. connect = cx_Oracle.connect(oracle_user,oracle_pass,'%s:%s/%s'%(oracle_host,oracle_port,oracle_db), encoding = "UTF-8", nencoding = "UTF-8")
  38. # connect = cx_Oracle.connect('%s/%s@%s:%s/%s'%(oracle_user,oracle_pass,oracle_host,oracle_port,oracle_db))
  39. return connect
  40. def getConnect_mongodb():
  41. client = pymongo.MongoClient(mongo_host,mongo_port)
  42. db = client[mongo_db]
  43. db.authenticate(mongo_user,mongo_pass)
  44. return db
  45. def make_elasticSearch(query):
  46. resp = requests.post(elasticSearch_url,json=query)
  47. if resp.status_code==200:
  48. return json.loads(resp.content.decode())
  49. return None
  50. def getConnect_neo4j():
  51. graph = Graph(host=neo4j_host,auth=(neo4j_user,neo4j_pass))
  52. return graph
  53. # finded = graph.run("MATCH (n:Organization)-[R:ZhaoBiaoRelation]->(p:Project) where n.name='昆山市周市基础建设开发有限公司的昆山市恒迪服装辅料公司' RETURN p LIMIT 25")
  54. # print(json.loads(json.dumps(finded.data())))
  55. # print(finded)
  56. def getConnect_ots():
  57. ots_client = tablestore.client.OTSClient('https://bxkc-ots.cn-hangzhou.ots.aliyuncs.com', 'LTAI4FyUT7ZcQFZPjVtw5y9b', '2zscfFTvy3JWavtCeCOthLxF8bDNH3',
  58. 'bxkc-ots', logger_name = 'table_store.log',
  59. retry_policy = tablestore.WriteRetryPolicy())
  60. return ots_client
  61. def getConnect_gdb():
  62. from gremlin_python.driver import client
  63. client = client.Client('ws://gds-bp130d7rgd9m7n61150070pub.graphdb.rds.aliyuncs.com:3734/gremlin', 'g', username="bxkc", password="k0n1bxkc!0K^Em%j")
  64. callback = client.submitAsync("g.V('北京赛克德利科贸有限公司').outE('ZhongBiaoRelation').inV().inE('ZhaoBiaoRelation').outV()")
  65. for result in callback.result():
  66. for item in result:
  67. print(item.id)
  68. return client
  69. if __name__=="__main__":
  70. # solrQuery("document",{"q":"*:*"})
  71. # getConnect_mongodb()
  72. # data = solrQuery_url('http://47.97.221.63:8983/solr/document/select?fq=(publishtime:[2020-01-01T00:00:00Z%20TO%202020-08-12T23:59:59Z])&q=dochtmlcon:"防盗门"')
  73. # data = solrQuery("document",{"q":'dochtmlcon:"防盗门"',"fq":'(publishtime:[2020-01-01T00:00:00Z%20TO%202020-08-12T23:59:59Z])',"fl":"city","rows":1})
  74. # data = make_elasticSearch({"query":{"bool":{"must":[{"wildcard":{"nicknames.keyword":"*服装*"}}],"must_not":[],"should":[]}},"from":0,"size":10,"sort":[],"aggs":{}})
  75. # print(data)
  76. # getConnect_neo4j()
  77. conn = getConnection_oracle()
  78. # cursor = conn.cursor()
  79. # getConnect_gdb()