老师,如何往出循环每组数据?

来源:6-8 xpath基本语法 - 2

拥抱开源

2020-07-09

图片描述
执行上面的代码返回
图片描述

老师,我这个为什么不是一组一组的数据,而是把所有数据都put到了一个list里面,我是想要类似于下面这样的数据
[
[初识HTML(5)+CSS(3)-2020升级版,入门,1133597],
[Java入门第一季,入门,1075269]
]

代码如下:
from scrapy import Selector
from urllib import request

url = 'https://www.imooc.com/course/list
r = request.urlopen(url)
htmls = r.read()
htmls = str(htmls, encoding=‘utf-8’)

sel = Selector(text=htmls)
a = sel.xpath(’//*[@id=“main”]/div[2]/div[2]/div[1]/div/div/a/div[2]/h3/text()|//div[@class=“course-card-info”]/span/text()’).extract()
if a:
for a1 in a:
print(a1)

from scrapy import Selector
from urllib import request

url = 'https://www.imooc.com/course/list'
r = request.urlopen(url)
htmls = r.read()
htmls = str(htmls, encoding='utf-8')

sel = Selector(text=htmls)
a = sel.xpath('//*[@id="main"]/div[2]/div[2]/div[1]/div/div/a/div[2]/h3/text()|//div[@class="course-card-info"]/span/text()').extract()
if a:
    for a1 in a:
        print(a1)
写回答

2回答

bobby

2020-07-09

下面的代码能否格式化以下  我需要在本地运行以下

0
2
拥抱开源
老师,我把问题修改了一下,下面是代码
2020-07-09
共2条回复

bobby

2020-07-09

# import grpc
#
# from grpc_test.proto import product_pb2_grpc
# from grpc_test.proto import product_pb2
#
# product_channel = grpc.insecure_channel('127.0.0.1:9090')
# product_client = product_pb2_grpc.ProductStub(product_channel)
# # rsp = product_client.CreateProduct(product_pb2.CreateProductRequest(name="bobby"))
# # print(rsp.id, rsp.name)
# rsp = product_client.GetProduct(product_pb2.GetProductRequest(id=2))
# print(rsp.id, rsp.name)
#


from scrapy import Selector

from urllib import request



url = 'https://www.imooc.com/course/list'

r = request.urlopen(url)

htmls = r.read()

htmls = str(htmls, encoding='utf-8')



sel = Selector(text=htmls)

a = sel.xpath('//div[@class="course-card-content"]')
data = []
if a:
    for a1 in a:
        name = a1.xpath(".//h3[@class='course-card-name']/text()").extract()[0]
        degree = a1.xpath(".//div[@class='course-card-info']/span[1]/text()").extract()[0]
        nums = a1.xpath(".//div[@class='course-card-info']/span[2]/text()").extract()[0]
        data.append((name, degree, nums))

print(data)


0
1
拥抱开源
谢谢老师
2020-07-09
共1条回复

Python爬虫工程师实战 大数据时代必备

慕课网严选精品教程,高质量内容+服务!

2378 学习 · 1158 问题

查看课程