2. 创建conndb py,包括数据库连接断开,添加、删除、修改、和其他操作:# !\/usr\/bin\/env python # - * -编码:utf - 8 - *进口pymysqldef conn_db(): #连接到数据库函数康涅狄格州=(主机=\u201Clocalhost\u201D,用户=数据库用户名,密码=数据库密码,db =数据库名称,charset = use utf8) cur =()返回康涅狄格州,curdef exe_update (cur, sql): # Update语句,执行更新、插入语句sta = (sql)返回stadef exe_delete (cur, ids): # Delete语句,批量删除eachID (\u201D): sta =(\u201C删除从cms id = % d ' % int (eachID))返回stadef exe_query (cur, sql): #查询语句(sql)返回curdef exe_commit(坏蛋):()#执行提交操作,insert语句将def conn_close生效(康涅狄格州,cur): #关闭所有连接()()3。
\/usr\/bin\/env python # - * -编码:utf - 8 - * -进口requestsfrom bs4进口BeautifulSoupimport datetimeimport conndbdef get_html_text (url):试题:r = (url,超时= 30)# = _encoding =\u201Cutf - 8\u201D# #打印编码方法()returnexcept BaseException e:打印(BaseException:, e)返回\时间=(\u201C跨度\u201D)。字符串#新闻创建日期time1 =\u201C20\u201D+时间(0(\字符串#打印(标题+时间+ url) get_new_content (url、标题、时间)def get_new_content (url、标题、tim1): html = get_html_text (url) #打印(html)汤\u201D= BeautifulSoup (html、) #打印项p (p) #: #: # print() #调用更新记录函数p_str = str (p) # p是一个标签,可以转换成一个字符串,并去除前后的[]符号长度= len (p_str) utf8_length = len (p_ (utf - 8))长度= (utf8_length长度)\/ 2 + lengthp_str = p_str [1: int(长度)]tim2 = (20 + tim1,\u201CY % - % - % d % H: % m ') #转换日期以字符串格式Datetimesta所需数据库= _update(坏蛋,\u201D插入cms(标题、内容、gmt_create)\u201D\u201C值(' % s ', ' % s ', ' % s ')\u201D%(标题、p_str tim2))如果sta = = 1:打印(\u201C插入成功\u201D)其他:打印(\u201C插入失败\u201D)def主要():url =\u201C抓住页面url\u201Dget_content (url) #调用该函数连接到数据库康涅狄格州,坏蛋= _db主要()()_commit(坏蛋)#关注!
你必须记住提交,否则操作成功,但它不是添加到数据库_close(康涅狄格州,cur)这样,捕获的数据可以保存在数据库中。