Advertisement
Guest User

Untitled

a guest
Feb 9th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. import pickle
  2. import time
  3. import ftplib
  4. import MySQLdb
  5. import sys
  6. from sys import argv
  7. import os
  8. import urllib
  9. import subprocess
  10. import urllib.request
  11. from ftplib import FTP
  12. from selenium import webdriver
  13. from time import sleep
  14. from selenium.webdriver.chrome.options import Options
  15. import requests
  16. from rets import Session
  17.  
  18. db2 = MySQLdb.connect(host=".com", # your host, usually localhost
  19. charset='utf8',
  20. user="steve", # your username
  21. passwd="", # your password
  22. db="") # name of the data base
  23.  
  24. login_url = ''
  25. username = '!'
  26. password = ''
  27. rets_client = Session(login_url, username, password)
  28. rets_client.login()
  29. system_data = rets_client.get_system_metadata()
  30. system_data
  31. resources = rets_client.get_resource_metadata(resource='Agent')
  32. resources
  33. search_results = rets_client.search(resource='Property', resource_class='RES', dmql_query='(ListPrice=1+)')
  34. cur2 = db2.cursor()
  35. cur2.execute('SET NAMES utf8;')
  36. cur2.execute('SET CHARACTER SET utf8;')
  37. cur2.execute('SET character_set_connection=utf8;')
  38.  
  39. chunk_size = 50
  40. chunks = []
  41. chunk_size = max(1, chunk_size)
  42. for i in range(0, len(search_results), chunk_size):
  43. chunk = search_results[i:i+chunk_size]
  44. chunks.append(chunk)
  45.  
  46. for chunk in chunks:
  47.  
  48. placeholders = ', '.join(['%s'] * len(chunk[0]))
  49. columns = "`%s`" % '`,`'.join(chunk[0].keys())
  50.  
  51. sql = "INSERT IGNORE INTO houses ( %s ) VALUES ( %s )" % (columns, placeholders)
  52.  
  53. chunk_values = []
  54. for result in chunk:
  55. chunk_values.append(tuple(result.values()))
  56.  
  57. success = False
  58.  
  59. try:
  60. cur2.executemany(sql, chunk_values)
  61. db2.commit()
  62. print ("Records inserted")
  63. success = True
  64. except:
  65. db2.rollback()
  66.  
  67. if not success:
  68. for result in chunk:
  69. placeholders = ', '.join(['%s'] * len(result))
  70. columns = "`%s`" % '`,`'.join(result.keys())
  71. sql = "INSERT INTO homes ( %s ) VALUES ( %s )" % (columns, placeholders)
  72. print (sql)
  73. cur2.execute(sql, result.values())
  74. print ("Record inserted")
  75. db2.commit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement