阅读权限 255 威望 0 级论坛币 1011 个 通用积分 0.9000 学术水平 0 点 热心指数 2 点 信用等级 0 点 经验 423 点 帖子 5 精华 0 在线时间 72 小时 注册时间 2018-5-8 最后登录 2023-6-26
已卖:2 份资源
大专生
还不是VIP /贵宾
威望 0 级论坛币 1011 个 通用积分 0.9000 学术水平 0 点 热心指数 2 点 信用等级 0 点 经验 423 点 帖子 5 精华 0 在线时间 72 小时 注册时间 2018-5-8 最后登录 2023-6-26
开心
2021-1-19 21:50:19
签到天数: 7 天
连续签到: 1 天
[LV.3]偶尔看看II
10 论坛币
刚开始学python3.6,在spyder写了一段码想爬一下手机报价,但是最终结果出不来,不知道问题出在哪里了,求救论坛里的各位大佬,帮忙看看问题在哪。谢谢大家了!
import urllib.request
import re
stock_codeurl="http://product.it168.com/list_0302.html"
def urltolist(url):
allCodeList=[]
html=urllib.request.urlopen(url).read()
html=html.decode('utf_8')
s=r'<li><a target="_blank" href="http://product.it168.com/detail/.*.html">'
pat=re.compile(s)
code=pat.findall(html)
allCodeList.append(code)
return allCodeList
if __name__ == '__main__':
allCodeList=urltolist(stock_codeurl)
print(allCodeList[:10])
运行到这一段输出的就不对,并没有输出10个号码,所以怀疑是前面的decode有问题还是其他的
for code in allCodeList:
url='http://product.it168.com/detail/+'+code[0]+'.html'
urllib.request.urlretrieve(url,'D:\\smartphone_price\\'+code[0]+'.csv')