wanpojie 发表于 2021-7-26 14:29

为啥for会报错

import requests
import parsel #数据解析方式

url = 'https://movie.douban.com/top250'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36'}


response = requests.get(url=url,headers=headers)
print(response.request.headers)
html_data = response.text   # str 只能用正则
#print(response)
#print(html_data)


#解析数据
selector = parsel.Selector(html_data)
#print(selector)

#二次提取
lis = selector.xpath(('//ol[@class="grid_view"]/li')#提取当前所有li标签

for li in lis:
    title = li.xpath('.li//div[@class="hd"]/a/span/text()').get()
    print(title)
以下是报错我非常确定那个冒号是英文状态下的

C:\Users\imwb\PycharmProjects\demo2\venv\Scripts\python.exe C:/Users/imwb/PycharmProjects/demo2/main.pyFile "C:/Users/imwb/PycharmProjects/demo2/main.py", line 22    for li in lis:               ^SyntaxError: invalid syntaxProcess finished with exit code 1

wanpojie 发表于 2021-7-26 14:30

报错内容是最后那个for li in lis:    位置指向是冒号,这个冒号绝对是英文状态的

qujf 发表于 2021-7-26 14:38

#二次提取
lis = selector.xpath(('//ol[@class="grid_view"]/li')#提取当前所有li标签

path后面少了一个小括号:@

cdsgg 发表于 2021-7-26 14:54

#二次提取
lis = selector.xpath(('//ol[@class="grid_view"]/li')#提取当前所有li标签

多了一个括号 在xpath()

花好s月圆 发表于 2021-7-26 14:57

这是python语言吧。

Simon28 发表于 2021-7-26 15:12

检查一下lis?

Loker 发表于 2021-7-26 15:19

上一行多了个括号,或者缩进问题

wslans 发表于 2021-7-26 15:27

前面一行 少一个)或者多一个前括号,影响到 后面代码的识别导致的,先修改正确括号,再解决其他问题

lorzl 发表于 2021-7-26 15:42

因为写的不对,hhhh

wynanwong 发表于 2021-7-26 16:42

lis = selector.xpath(('//ol[@class="grid_view"]/li')

上面这句话,多了个(
页: [1]
查看完整版本: 为啥for会报错