gpt4 book ai didi

Python for 循环重复

转载 作者:行者123 更新时间:2023-11-29 02:43:43 25 4
gpt4 key购买 nike

    def get_user_data(self,start_url):
html = requests.get(url=start_url,headers=self.headers,cookies=self.cookies).content
selector = etree.fromstring(html,etree.HTMLParser(encoding='utf-8'))
contents = selector.xpath('//span[@class="ctt"]/text()')
times = selector.xpath('//span[@class="ct"]/text()')
data = {}
for each_text in contents:

data['content'] = each_text.encode().decode('utf-8').replace('\u200b','')

for each_time in times:
month_day, time, device = each_time.split(maxsplit=2)
data['mobile_phone'] = device
data['create_time'] = month_day + time
data['crawl_time'] = datetime.strftime(datetime.now(),'%Y-%m-%d %H:%M:%S')
self.mysql.insert(data)

我想往数据库中插入数据,但是data['content']字段重复了,应该怎么修改呢?

最佳答案

您应该并行遍历 contentstimes,而不是一个接一个。尝试使用 zip

def get_user_data(self,start_url):
html = requests.get(url=start_url,headers=self.headers,cookies=self.cookies).content
selector = etree.fromstring(html,etree.HTMLParser(encoding='utf-8'))
contents = selector.xpath('//span[@class="ctt"]/text()')
times = selector.xpath('//span[@class="ct"]/text()')
for each_text, each_time in zip(contents, times):
data = {}
data['content'] = each_text.encode().decode('utf-8').replace('\u200b','')
month_day, time, device = each_time.split(maxsplit=2)
data['mobile_phone'] = device
data['create_time'] = month_day + time
data['crawl_time'] = datetime.strftime(datetime.now(),'%Y-%m-%d %H:%M:%S')
self.mysql.insert(data)

关于Python for 循环重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46364563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com