'id', 'title', 'name'열이있는 테이블이 있고 Beautiful Soup으로 구문 분석 된 XML을 기반으로 값을 삽입하려고합니다. 각 값의 위치를 추적하는 함수는 다음과 같이 정의됩니다.
def getmax(column):
query = 'select count(?) from table'
c.execute(query, [column])
result = c.fetchall()
for e, i in enumerate(result):
for y in enumerate(i):
if not y[1]:
return 0
else:
return y[1] # used because fetchall returns a tuple
각 열에 값이 삽입 된 마지막 행을 제공합니다. 값을 삽입하는 함수는 다음과 같습니다.
for e in soup.findAll('title'):
e = str(e)
query = "insert into table (id, title) values (?, ?)"
c.execute(query, (getmax('title') + 1, e))
db.commit()
for e in soup.findAll('name'):
e = str(e)
query = "UPDATE table SET name = (?) WHERE id = (?);"
c.execute(query, (e, getmax('name') + 1))
db.commit()
다음을 반환합니다.
id title name
1 title1
2 title2
3 title3
4 title4
5 title5
도움을 주셔서 대단히 감사합니다.
이 문제를 해결하기 위해 (자세한 정보 format()
는 이것을 참조하십시오 ) 방법을 사용할 수 있습니다 . 또한 a if condition else b
코드를 단순화하기 위해를 사용할 수 있습니다 .
def getmax(column):
query = 'select count({}) from longform'.format(column)
c.execute(query)
result = c.fetchall()
for e, i in enumerate(result):
for y in enumerate(i):
return y[1] if y[1] else 0
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다