"""
@author: cjp
@file: cssfan.py
@time: 2020/9/11 16:37
"""import re
from operator import itemgetter
import requests
from lxml import etree
defgao
(url)
: items =
headers =
response = requests.get(url, headers=headers, timeout=20)
# print(response.content.decode())
html = etree.html(response.content.decode())
divs = html.xpath(
'//div[@class="row"]/div[@class="col-md-1"]'
) result =
0# print(len(divs))
for div in divs:
clas = div.xpath(
'./div'
) a_items =
# 獲取每個數字所在位置
left =
1# 數字第幾位
for cla in clas:
class_name = cla.xpath(
'./@class'
) res = class_name[0]
+'.*'
div_num = cla.xpath(
'./text()'
)# 獲取每乙個的值
class_value = re.findall(res, response.content.decode())
item =
for value in class_value:
vals = value.split(
':')
item[vals[0]
.strip()]
= vals[1]
.strip(
).strip(
'em'
) valu =
false
if'opacity'
in item:
if item[
'opacity']==
0:# 隱藏元素
pass
elif
'content'
in item:
# 該位置顯示的最後
result = item[
'content'
]# print(type(result), int(result.strip('"')))
int(result.strip(
'"')))
elif
'left'
in item:
valu = left +
int(item[
'left'])
# 元素移動之後所在位置
else
: valu = left # 元素保持原來的位置
if valu:
left +=
1 item_num =
item_num[
'num']=
''.join(div_num)
item_num[
'valu'
]= valu
if a_items:
a_items.sort(key=itemgetter(
'valu'
), reverse=
false
) nums =
''for item in a_items:
num = item[
'num'
] nums += num
int(nums)
)# 這一頁所有的資料列表
print
(items)
return items
defmain()
:list=[
] total =
0for i in
range(1
,1001):
url =
''.format
(i)for i in gao(url)
:list
print
(list
)for ele in
range(0
,len
(list))
: total = total +
list
[ele]
print
('合為:'
,total)
if __name__ ==
'__main__'
: main(
)
GlidedSKY挑戰之五 CSS反爬
雖然幾個挑戰沒寫完,簡單的看了一下,爬蟲工作過程中一些問題在這裡都有展示,是乙個可以檢驗爬蟲工作者的能力的 跟玄幻 中挑戰塔一樣。說一下,第5個挑戰 css反爬 通過css修改了樣式,在頁面上看到的數字展示跟原始碼中的展示不一樣 直接上 了。import re from operator impor...
glidedsky挑戰 CSS反爬
相應頁面 分析這個頁面的特點 頁面顯示出來的資料不同 頁面中部分顯示的資料可能在標籤中不顯示 頁面 現數字順序是亂的,不好組合拼接,如第3個字元 346對應634 頁面中,有些字元還出現其它的數字來擾亂數字。是不是這些資料似曾相識,沒錯了,這些css 就是頁面數字顯示出來的規則。沒辦法了,那就分析 ...
glidedsky爬蟲闖關 第一關
今天無意中發現了乙個練習爬蟲的 做的挺不錯的 強烈推薦 第一關是將網頁中所有的數字相加,因為格式十分整齊,可以用多種方法來實現,一併記錄在這裡了,注意在get的時候要加上在cookie import requests from bs4 import beautifulsoup import refr...