当前位置:网站首页>网站某个按钮样式爬取片段
网站某个按钮样式爬取片段
2022-04-23 15:15:00 【萱泽科技】
有兴趣的可以试一下。参考学习!
import requests
import os
class Code:
def __init__(self):
self.url = [
"https://api.uiverse.io/buttons?type=button&orderBy=popular",
"https://api.uiverse.io/buttons?type=button-of-the-day&orderBy=popular",
"https://api.uiverse.io/buttons?type=card&orderBy=popular",
"https://api.uiverse.io/buttons?type=checkbox&orderBy=popular",
"https://api.uiverse.io/buttons?type=input&orderBy=popular",
"https://api.uiverse.io/buttons?type=spinner&orderBy=popular",
"https://api.uiverse.io/buttons?type=switch&orderBy=popular",
]
self.headers = {
"user-agent": "Mozilla / 5.0(Windows NT 10.0;WOW64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 86.0.4240.198Safari / 537.36"
}
def send_request(self, url):
return requests.get(url, headers=self.headers, timeout=3).json()
def run(self):
for url in self.url:
html_str = self.send_request(url)
for val in html_str['buttons']:
css = val['scopedCss']
html = val['html']
first = css.index('.')
last = css.find(' ', first)
print(first)
print(css[first+1:last])
content = (
'<html lang="en">'
'<head>'
'<meta charset="UTF-8">'
'<meta name="viewport" content="width=device-width, initial-scale=1.0">'
'<title > Document </title>'
'<style >' + css + '</style>'
'</head>'
'<body><div class="' + css[first+1:last] + '">' + html + '</div></body>'
'</html>'
)
# break
path = "C:/Users/Administrator/Downloads/Documents"+url[36:-16]
if not os.path.exists(path=path):
os.makedirs(path)
with open(path + '/' + val['id'] + '.html', 'w',
encoding='utf-8') as ht:
ht.write(content)
def main():
code = Code()
code.run()
if __name__ == '__main__':
main()
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
- 57.
- 58.
- 59.
- 60.
版权声明
本文为[萱泽科技]所创,转载请带上原文链接,感谢
https://blog.51cto.com/u_15612978/5248579
边栏推荐
- kubernetes之常用Pod控制器的使用
- About UDP receiving ICMP port unreachable
- Detailed explanation of C language knowledge points -- data types and variables [1] - carry counting system
- Share 20 tips for ES6 that should not be missed
- OPPO数据湖统一存储技术实践
- Leetcode151 - invert words in string - String - simulation
- [thymeleaf] handle null values and use safe operators
- Common interview questions of operating system:
- 脏读、不可重复读和幻读介绍
- How to upload large files quickly?
猜你喜欢

Openfaas practice 4: template operation

Set onedrive or Google drive as a drawing bed in upic for free

大文件如何快速上传?

Five data types of redis

让阿里P8都为之着迷的分布式核心原理解析到底讲了啥?看完我惊了

Advanced version of array simulation queue - ring queue (real queuing)

函数(第一部分)

Redis主从同步

Leetcode167 - sum of two numbers II - double pointer - bisection - array - Search

Brute force of DVWA low -- > High
随机推荐
T2 iCloud日历无法同步
函数(第一部分)
Practice of unified storage technology of oppo data Lake
js——實現點擊複制功能
8.4 realization of recurrent neural network from zero
asp. Net method of sending mail using mailmessage
Advanced version of array simulation queue - ring queue (real queuing)
Error: unable to find remote key "17f718f726"“
SSH connects to the remote host through the springboard machine
MySQL sync could not find first log file name in binary log index file error
Detailed analysis of SQL combat of Niuke database (26-30)
tcp_ Diag kernel related implementation 1 call hierarchy
Difference between like and regexp
A series of problems about the best time to buy and sell stocks
1n5408-asemi rectifier diode
MySQL Basics
nuxt项目:全局获取process.env信息
Sword finger offer (2) -- for Huawei
LeetCode149-直线上最多的点数-数学-哈希表
Mysql连接查询详解