如何修复此错误'list' object has no attribute 'text'
Davao14 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[1]')
Davao15 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[2]')
Davao16 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[3]')
Davao17 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[4]')
Davao18 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[5]')
Davao19 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[6]')
Davao20 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[7]')
Davao21 = wd1.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[8]')
Cebu14 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[1]')
Cebu15 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[2]')
Cebu16 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[3]')
Cebu17 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[4]')
Cebu18 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[5]')
Cebu19 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[6]')
Cebu20 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[7]')
Cebu21 = wd2.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[8]')
Manila14 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[1]')
Manila15 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[2]')
Manila16 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[3]')
Manila17 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[4]')
Manila18 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[5]')
Manila19 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[6]')
Manila20 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[7]')
Manila21 = wd3.find_elements_by_xpath('/html/body/div[2]/div[4]/div/div[3]/div[1]/div[1]/div/div/div[8]')
data1 = [Davao14, Davao15, Davao16, Davao17, Davao18, Davao19, Davao20, Davao21]
data2 = [Cebu14, Cebu15, Cebu16, Cebu17, Cebu18, Cebu19, Cebu20, Cebu21]
data3 = [Manila14, Manila15, Manila16, Manila17, Manila18, Manila19, Manila20, Manila21]
for datas1 in data1:
for datas2 in data2:
for datas3 in data3:
print("***DAVAO-CITY***nn")
print(datas1.text)
print("nn")
print("***CEBU-CITY***nn")
print(datas2.text)
print("nn")
print("***MANILA-CITY***nn")
print(datas3.text)
输出:
***DAVAO-CITY***
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-96-63ba9131bde0> in <module>()
7 for datas3 in data3:
8 print("***DAVAO-CITY***nn")
----> 9 print(datas1.text)
10 print("nn")
11 print("***CEBU-CITY***nn")
AttributeError: 'list' object has no attribute 'text'
data1 = [Davao14, Davao15, Davao16, Davao17, Davao18, Davao19, Davao20, Davao21]
data1 是 Web 元素列表的列表。 这意味着,Davao14
也是一个列表。 达沃15等也是如此。
for datas1 in data1:
for inside_list in datas1:
print("***DAVAO-CITY***nn")
print(inside_list.text)
同样,您可以对data2
和data3
使用不同的循环
更新:
嵌套循环是快速获取big O notation
的一种方法。
通常(但并非总是)嵌套在另一个循环中的一个循环会导致O(n²)
。
对于这个用例,我不喜欢嵌套循环。
for datas2 in data2:
for inside_list in datas2:
print("***DAVAO-CITY***nn")
print(inside_list.text)
datas1
是一个字符串列表,而每个data1
元素都是一个字符串.datas2
&data2
和datas3
&data3
也是如此 .
String 元素没有.text
方法.
字符串列表也没有.text
方法.
要打印所有字符串列表,您应该将字符串本身直接传递给print()
方法.
所以而不是
data1 = [Davao14, Davao15, Davao16, Davao17, Davao18, Davao19, Davao20, Davao21]
data2 = [Cebu14, Cebu15, Cebu16, Cebu17, Cebu18, Cebu19, Cebu20, Cebu21]
data3 = [Manila14, Manila15, Manila16, Manila17, Manila18, Manila19, Manila20, Manila21]
for datas1 in data1:
for datas2 in data2:
for datas3 in data3:
print("***DAVAO-CITY***nn")
print(datas1.text)
print("nn")
print("***CEBU-CITY***nn")
print(datas2.text)
print("nn")
print("***MANILA-CITY***nn")
print(datas3.text)
它应该是
data1 = [Davao14, Davao15, Davao16, Davao17, Davao18, Davao19, Davao20, Davao21]
data2 = [Cebu14, Cebu15, Cebu16, Cebu17, Cebu18, Cebu19, Cebu20, Cebu21]
data3 = [Manila14, Manila15, Manila16, Manila17, Manila18, Manila19, Manila20, Manila21]
for datas1 in data1:
for datas2 in data2:
for datas3 in data3:
print("***DAVAO-CITY***nn")
print(data1)
print("nn")
print("***CEBU-CITY***nn")
print(data2)
print("nn")
print("***MANILA-CITY***nn")
print(data3)