本文整理匯總了Python中pymysql.InternalError方法的典型用法代碼示例。如果您正苦於以下問題:Python pymysql.InternalError方法的具體用法?Python pymysql.InternalError怎麽用?Python pymysql.InternalError使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類pymysql
的用法示例。
在下文中一共展示了pymysql.InternalError方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: process_item
# 需要導入模塊: import pymysql [as 別名]
# 或者: from pymysql import InternalError [as 別名]
def process_item(self, item, spider):
if spider.name in ['RssCrawler', 'GdeltCrawler']:
# Search the CurrentVersion table for a version of the article
try:
self.cursor.execute(self.compare_versions, (item['url'],))
except (pymysql.err.OperationalError, pymysql.ProgrammingError, pymysql.InternalError,
pymysql.IntegrityError, TypeError) as error:
self.log.error("Something went wrong in rss query: %s", error)
# Save the result of the query. Must be done before the add,
# otherwise the result will be overwritten in the buffer
old_version = self.cursor.fetchone()
if old_version is not None and (datetime.datetime.strptime(
item['download_date'], "%y-%m-%d %H:%M:%S") -
old_version[3]) \
< datetime.timedelta(hours=self.delta_time):
# Compare the two download dates. index 3 of old_version
# corresponds to the download_date attribute in the DB
raise DropItem("Article in DB too recent. Not saving.")
return item
示例2: fetch_all
# 需要導入模塊: import pymysql [as 別名]
# 或者: from pymysql import InternalError [as 別名]
def fetch_all(sql_content, host, port, user, password, db_in):
"""
封裝mysql連接和獲取結果集方法
:param sql_content:
:param host:
:param port:
:param user:
:param password:
:param db_in:
:return:
"""
result = None
conn = None
cur = None
sql_content = sql_content.encode('utf-8').decode('utf-8')
try:
conn = pymysql.connect(
host=host,
user=user,
password=password,
db=db_in,
port=port,
charset='utf8mb4'
)
cur = conn.cursor()
cur.execute(sql_content)
result = cur.fetchall()
except pymysql.InternalError as e:
print("Mysql Error %d: %s" % (e.args[0], e.args[1]))
finally:
if cur is not None:
cur.close()
if conn is not None:
conn.close()
return result
示例3: connect
# 需要導入模塊: import pymysql [as 別名]
# 或者: from pymysql import InternalError [as 別名]
def connect(self):
self.initConnection()
try:
self.connector = pymysql.connect(host=self.hostname, user=self.user, passwd=self.password, db=self.db, port=self.port, connect_timeout=conf.timeout, use_unicode=True)
except (pymysql.OperationalError, pymysql.InternalError), msg:
raise SqlmapConnectionException(msg[1])
示例4: convert_exceptions
# 需要導入模塊: import pymysql [as 別名]
# 或者: from pymysql import InternalError [as 別名]
def convert_exceptions(msg: str) -> Iterator:
"""Convert internal mysql exceptions to our InvalidDatabaseError"""
from pymysql import OperationalError, InternalError, ProgrammingError
try:
yield
except (OperationalError, InternalError, ProgrammingError) as exc:
raise exceptions.InvalidDatabaseError(msg) from exc
示例5: reset_mysql
# 需要導入模塊: import pymysql [as 別名]
# 或者: from pymysql import InternalError [as 別名]
def reset_mysql(self):
"""
Resets the MySQL database.
"""
confirm = self.no_confirm
print("""
Cleanup MySQL database:
This will truncate all tables and reset the whole database.
""")
if not confirm:
confirm = 'yes' in builtins.input(
"""
Do you really want to do this? Write 'yes' to confirm: {yes}"""
.format(yes='yes' if confirm else ''))
if not confirm:
print("Did not type yes. Thus aborting.")
return
print("Resetting database...")
try:
# initialize DB connection
self.conn = pymysql.connect(host=self.mysql["host"],
port=self.mysql["port"],
db=self.mysql["db"],
user=self.mysql["username"],
passwd=self.mysql["password"])
self.cursor = self.conn.cursor()
self.cursor.execute("TRUNCATE TABLE CurrentVersions")
self.cursor.execute("TRUNCATE TABLE ArchiveVersions")
self.conn.close()
except (pymysql.err.OperationalError, pymysql.ProgrammingError, pymysql.InternalError,
pymysql.IntegrityError, TypeError) as error:
self.log.error("Database reset error: %s", error)
示例6: connect
# 需要導入模塊: import pymysql [as 別名]
# 或者: from pymysql import InternalError [as 別名]
def connect(self):
self.initConnection()
try:
self.connector = pymysql.connect(host=self.hostname, user=self.user, passwd=self.password, db=self.db, port=self.port, connect_timeout=conf.timeout, use_unicode=True)
except (pymysql.OperationalError, pymysql.InternalError, pymysql.ProgrammingError, struct.error), msg:
raise SqlmapConnectionException(getSafeExString(msg))