套件
- requests
- beautifulsoup4
pip3 install requests beautifulsoup4
開始
發請求
import requests
from bs4 import BeautifulSoup
url = "<https://www.sinya.com.tw/search/2?sort=price&order=DESC>"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
print(soup)
觀察結果
...
<script>
var twca_cn = "*.sinya.com.tw";
</script>
<script charset="utf-8" src="//ssllogo.twca.com.tw/twcaseal_v3.js" type="text/javascript"></script>
<script>
//左bar
$(document).on('click', '.btnSideBar', function(event) {
event.preventDefault();
showSidebar();
});
$(document).on('click', '.btnSidebarClose', function(event) {
event.preventDefault();
showSidebar();
});
function showSidebar() {
$('.sidebar').toggleClass('open');
$('.mask').toggleClass('open');
$('.btnSidebarClose').toggleClass('open');
}
//打開論壇
$(document).on('click', '.openForum', function(event) {
event.preventDefault();
$('.forumModal').addClass('open');
});
//關閉論壇
$(document).on('click', '.closeForum', function(event) {
event.preventDefault();
$('.forumModal').removeClass('open');
});
//左側menu
$('.fa-bars , .linee , .openMeun').on('click', function() {
$('.menu').toggleClass('over');
$('.linea1').toggleClass('overL1');
$('.linea2').toggleClass('overL2');
$('.linea3').toggleClass('overL3');
$('.voci-menu').toggleClass('active');
$('.menu-espanso').toggleClass('menu-espansoOpen');
$('body').toggleClass('menuOpen');
});
//頁腳資訊
$(document).on('click mouseover', '.footerItems', function(event) {
var value = $(this).attr('data-id');
$('.footer_about').find('ul').addClass('hidden');
$('.footer_about').find('.footerItem' + value).removeClass('hidden');
});
//論壇顯示頭像
$(document).on('click', '.showforumUser', function(event) {
event.preventDefault();
$('.forumModal .forumBox .left').addClass('open');
});
//論壇隱藏頭像
$(document).on('click', '.forumModal .forumBox .open', function(event) {
event.preventDefault();
$('.forumModal .forumBox .left').removeClass('open');
});
$(document).on('click', '.inputProdSearch', function(event) {
event.preventDefault();
$('.searchArea .searchGroup .searchBtns').addClass('open');
$('.searchArea .searchGroup .input-group').addClass('open');
});
$(document).on('click', '.phoneBtns .btnClose', function(event) {
event.preventDefault();
$('.searchArea .searchGroup .searchBtns').removeClass('open');
$('.searchArea .searchGroup .input-group').removeClass('open');
});
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.src = "//connect.facebook.net/zh_TW/sdk.js#xfbml=1&version=v2.9&appId=507761536278761";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
$(function() {
$('.gotop').click(function() {
$('html,body').animate({
scrollTop: 0
}, 333);
})
getMarquee();
})
/* 跑馬燈 */
function getMarquee() {
var $mq = $('.marquee').marquee({
duration: 15000,
gap: 50,
delayBeforeStart: 0,
direction: 'left',
duplicated: true
});
$('.marquee').hover(function() {
$mq.marquee('toggle');
})
var $fmq = $('.forumMarquee').marquee({
duration: 15000,
gap: 50,
delayBeforeStart: 0,
direction: 'left',
duplicated: true
});
$('.forumMarquee').hover(function() {
$fmq.marquee('toggle');
})
}
</script>
...
模擬打 API
import requests
import json
url = "<https://www.sinya.com.tw/api/search/getdata/2?sort=price&order=DESC>"
response = requests.get(url)
jsonObj = json.loads(response.text)
print(jsonObj)
觀察結果
{'result_total': '819', 'results': [{'prod_id': '174226', 'image': '/upload/prod/174226.jpg', 'favorable_tags': [], 'prod_groupname': None, 'prod_title': 'ZBOOK FURY 17 G8 菁英行動工作站', 'prod_subtitle': '創作菁英 | 高效能GPU | ISV軟體認證', 'old_price': '$209,000元', 'new_price': '$192,800元', 'discount_price': '省16,200元', 'hide_discount_price': 0, 'href': '<https://www.sinya.com.tw/prod/174226>', 'display_price_status': 1, 'price_comment': '', 'price_comment_link': ''},
處理一下
import requests
import json
url = "<https://www.sinya.com.tw/api/search/getdata/2?sort=price&order=DESC>"
response = requests.get(url)
jsonObj = json.loads(response.text)
for item in jsonObj['results']:
print(item['prod_title'])
print("需要錢錢:", item['new_price'])
print()
觀察結果
ZBOOK FURY 17 G8 菁英行動工作站
需要錢錢: $192,800元
MSI Titan GT77HX 13代制霸旗艦款電競筆電
需要錢錢: $169,900元
ASUS ROG Zephyrus Duo 16 GX650PY
需要錢錢: $149,999元
MSI CreatorPro X17 A12UMS 繪圖工作站
需要錢錢: $147,900元
MSI Titan GT77 龍魂制霸旗艦款電競筆電
需要錢錢: $137,900元
MSI Raider GE78HX 13代旗艦電競筆電
需要錢錢: $129,900元
ZBOOK FURY 17 G8 菁英行動工作站
需要錢錢: $127,900元
HP ZBOOK STUDIO G8 創作行動工作站
需要錢錢: $119,900元
MSI Raider GE76 i9/RTX3080Ti 旗艦款電競
需要錢錢: $113,900元
AORUS 17X AZF i9+3080 13代電競筆電
需要錢錢: $109,900元
ASUS ROG Strix SCAR 18 G834JY
需要錢錢: $109,900元
ZBOOK FURY 15 G8 菁英行動工作站
需要錢錢: $109,900元
acer Predator Helios PH18 13代掠奪者電競
需要錢錢: $108,900元
MSI Creator Z17 A12UHST 纖薄創作者筆電
需要錢錢: $107,900元
HP ZBOOK STUDIO G8 創作行動工作站
需要錢錢: $99,900元
acer Predator Helios PH16 13代掠奪者電競
需要錢錢: $98,900元
Raider GE66 Deluxe Edition 12代旗艦電競筆電
需要錢錢: $94,500元
HP ZBOOK STUDIO G8 創作行動工作站
需要錢錢: $93,900元
MSI Raider GE77HX 旗艦電競筆電
需要錢錢: $92,900元
ASUS ROG Strix SCAR 17 G733PZ
需要錢錢: $89,999元