Python运行成功但是没有相应文件输出?

新手上路,请多包涵
def getHTMLText(url):
    try:
        r=requests.get(url,timeout=30)
        r.raise_for_status()
        r.encoding=r.apparent_encoding
        return r.text
    except:
        return" "

    
>>> def getStockList(lst,stockURL):
    html=getHTMLText(stockURL)
    soup=BeautifulSoup(html,'html.parser')
    StockList=soup.find('div',attrs={'class':'title'})
    a=StockList.find_all('a')
    for i in a:
        try:
            href=i.attrs['href']
            lst.append(href)[0]
        except:
            continue

        
>>> def getStockInfo(lst,fpath):
    for stock in lst:

        html=getHTMLText(stock)
        try:
            if stock=="":
                continue
            infoDict={}
            soup=BeautifulSoup(stock,'html.parser')
            stockInfo=soup.find('div' ,attrs={'class’:’house-title'})
            name=stockInfo.find_all('div',attrs={'class’:’wrapper'})[0]
            infoDict.update({'房源名称':name.text.split()[0]})
            with open(fpath,'a',encoding='utf-8')as f:
                f.write(str(infoDict)+'\n')
        except:
            traceback.print_exc()
            continue

        
>>> import requests
>>> from bs4 import BeautifulSoup
>>> import re
>>> import traceback
>>> def main():
    stock_list_url='https://sz.lianjia.com/chengjiao/pg100/'
    output_file='C://Users/Thinkpad/Desktop'
    slist=[]
    getStockList(slist,stock_list_url)
    getStockInfo(slist,output_file)

    
>>> main()
阅读 3.9k
1 个回答

问题很多 : )

简单改了一下,发在Github Gist方便你看diff

不知道这个输出是不是你想要的:

{'房源名称': '碧水园 2室1厅 73平米'}
{'房源名称': '万科公园里一期 4室2厅 123.19平米'}
{'房源名称': '吉信大厦 2室1厅 65.35平米'}
{'房源名称': '中海日辉台 3室2厅 85.89平米'}
{'房源名称': '水电大厦 3室2厅 90.16平米'}
{'房源名称': '星河盛世 3室1厅 87.55平米'}
{'房源名称': '龙珠花园 2室1厅 60.04平米'}
{'房源名称': '尚都二期 3室2厅 100.44平米'}
{'房源名称': '富通好旺角二期 3室1厅 97.26平米'}
{'房源名称': '香珠花园 2室1厅 42平米'}
{'房源名称': '城市主场 1室1厅 45.16平米'}
{'房源名称': '信义御城豪园 2室2厅 65.61平米'}
{'房源名称': '荔芳村 1室1厅 30.56平米'}
{'房源名称': '龙岭山庄 2室2厅 66.64平米'}
{'房源名称': '半山道1号礼宾府 5室3厅 215.35平米'}
{'房源名称': '双龙花园 3室2厅 73.5平米'}
{'房源名称': '香诗美林 2室1厅 79.88平米'}
{'房源名称': '金港华庭 1室1厅 37.22平米'}
{'房源名称': '丽湖花园一期 1室0厅 42.23平米'}
{'房源名称': '启点公寓 1室0厅 17.48平米'}
{'房源名称': '金达花园 1室1厅 30.48平米'}
{'房源名称': '丽湖花园二期 2室1厅 62.96平米'}
{'房源名称': '金茂礼都 1室1厅 46.72平米'}
{'房源名称': '花岗石公司 3室2厅 94.37平米'}
{'房源名称': '国展苑一期 1室1厅 44.16平米'}
{'房源名称': '新天地名居 2室1厅 54.35平米'}
{'房源名称': '蓝馨苑 1室1厅 43.85平米'}
{'房源名称': '星河国际花园 3室2厅 143.52平米'}
{'房源名称': '嘉宝田花园 4室2厅 173.13平米'}
{'房源名称': '万科红四期 3室1厅 88.63平米'}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题