double07 发表于 2021-10-18 15:53

python 循环导出列表的问题?

本帖最后由 double07 于 2021-10-18 15:55 编辑

def main():
    link_lst =['https://cq.ke.com//ershoufang/jiangbei/', 'https://cq.ke.com//ershoufang/yubei/']
    for i in link_lst:
      href_lst = []
      html_detail = gethtml(i)
      html = etree.HTML(html_detail)
      href = html.xpath('//*[@id="beike"]/div/div/div/dl/dd/div/div/a/@href')
      for i in range(len(href)):
            link = 'https://cq.ke.com/' + href
            href_lst.append(link)
      print(href_lst)


代码中两个链接(第二行),每个链接下有不同数量子链接,想把子链接全部循环出来放在一张列表中,但目前代码循环出的子链接,是两个单独的列表(图片),无法合并在一张列表中,请问怎样修改?

magicianly 发表于 2021-10-18 16:01

本帖最后由 magicianly 于 2021-10-18 16:03 编辑

设置一个全局变量啊!
你把href_lst = []这行代码放在函数外。

Akihi6 发表于 2021-10-18 16:03

href_lst = [] 声明放到 for i in link_lst: 循环外面(上一行)

额微粒波地 发表于 2021-10-18 16:05

能不能把 href_lst 放外面,不要放在循环体内试试

154675361 发表于 2021-10-18 16:05

同上,每次循环url列表的时候,list都被置为空了,吧list放到循环歪就行了

double07 发表于 2021-10-18 17:13

谢谢几位!已解决!
页: [1]
查看完整版本: python 循环导出列表的问题?