首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python beautifulSoup findAll

python beautifulSoup findAll
EN

Stack Overflow用户
提问于 2016-02-20 02:48:05
回答 1查看 153关注 0票数 0

我很难从这个网站得到所有数据.我无法生成所有数据的代码部分是"pn“,我希望这段代码能够从站点生成这些数字。

58312-GA4 58312-RG4 58312-RR$

我尝试了很多东西,从切换标记和类到返回和第四次使用find、findAll和find_all,不管我尝试了什么,我只得到了一个结果。任何帮助都是很好的--谢谢这里的代码:

代码语言:javascript
复制
theurl="http://www.colehersee.com/home/grid/cat/14/?"
thepage = urllib.request.urlopen(theurl)
soup = BeautifulSoup(thepage,"html.parser")

for pn in soup.find('table',{"class":"mod_products_grid_listing"}).find_all('span',{"class":"product_code"}):
    pn2 = pn.text
for main in soup.find_all('nav',{"id":"breadcrumb"}):
    main1 = main.text

    print(pn2)
    print (main1)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-20 02:57:53

您正在运行for循环,用于获取'pn‘值,与用于“main”值的for循环非常不同。具体来说,当您的代码到达第二个for循环时,前面的for循环已经全部执行了。

这将导致变量pn2被分配给for循环返回的最后一个值。

你可能会想做这样的事

代码语言:javascript
复制
pn2 = []    
for pn in soup.find('table',{"class":"mod_products_grid_listing"}).find_all('span',{"class":"product_code"}):
    pn2.append(pn.text)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35518521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档