Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Szukacz piosenek


Rekomendowane odpowiedzi

Opublikowano

Szuka piosenek w wrzucie i wrzuca je do listviewa.

 


#include <INet.au3>
#include <html.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <GuiListView.au3>
Opt("GUIOnEventMode", 1)
#Region ### START Koda GUI section ### Form=C:\Documents and Settings\hacker\Moje dokumenty\dwnmp3.kxf
$Form1 = GUICreate("Form1", 633, 447, 192, 124)
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
$nazwa = GUICtrlCreateInput("Nazwa Utworu", 8, 8, 289, 21)
$Button1 = GUICtrlCreateButton("Pobierz", 304, 8, 99, 21, $WS_GROUP)
GUICtrlSetOnEvent(-1, "Button1Click")
$status = GUICtrlCreateLabel("...", 8, 40, 396, 17, $SS_CENTER)
$lista = GUICtrlCreateListView("Nazwa|Długosc|Rozmiar", 8, 64, 394, 270)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 250)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 60)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 60)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

dim $wLINKI[30]
dim $wCZASY[30]
dim $wROZMIARY[30]
dim $wTYTULY[30]

While 1
Sleep(100)
WEnd

Func _StringBetween2($s, $from, $to)
	$x = StringInStr($s, $from) + StringLen($from)
	$y = StringInStr(StringTrimLeft($s, $x), $to)
	Return StringMid($s, $x, $y)
EndFunc

Func ParseWrzuta($html)

; tutaj wyszukiwanie

$i = 0

For $i = 0 to 29 Step 1

; szukamy '<a class="title" href="'

$atitle = StringInStr($html,'<a class="title" href="')
$atitle = $atitle + 23

; kopiujemy link, az do znaku "

$koniec = False

$wLINK = ""

While $koniec == False

$znak = StringMid($html,$atitle,1)

if $znak == '"' Then
$koniec = true
Else
$wLINK = $wLINK & $znak
EndIf

$atitle = $atitle + 1

WEnd

; przechodzimy znak dalej - >

$atitle = $atitle + 1

; kopiujemy tytul az do znaku <

$koniec = False

$wTYTUL = ""

While $koniec == False

$znak = StringMid($html,$atitle,1)

if $znak == '<' Then
$koniec = true
Else
$wTYTUL = $wTYTUL & $znak
EndIf

$atitle = $atitle + 1

WEnd

; idziemy dalej az do '<span class="duration">'

$koniec = False

While $koniec == False

$znaki = StringMid($html,$atitle,23)

if $znaki == '<span class="duration">' Then
$koniec = true
EndIf

$atitle = $atitle + 1

WEnd

$atitle = $atitle + 22

; pobieramy czas (5 znakow)

$wCZAS = StringMid($html,$atitle,5)

$atitle = $atitle + 5

; idziemy dalej az do '<span class="size">'

$koniec = False

While $koniec == False

$znaki = StringMid($html,$atitle,19)

if $znaki == '<span class="size">' Then
$koniec = true
EndIf

$atitle = $atitle + 1

WEnd

$atitle = $atitle + 18

; pobieramy rozmiar az do </span>

$wROZMIAR = ""

$koniec = false

While $koniec == False

$znak = StringMid($html,$atitle,1)

if $znak == '<' Then
$koniec = true
Else
$wROZMIAR = $wROZMIAR & $znak
EndIf

$atitle = $atitle + 1

WEnd

; usuwamy ta czesc od gory i jedziemy dalej

$html = StringRight($html,StringLen($html)-$atitle)

$wTYTULY[$i] = _HTMLDecode($wTYTUL) ; zeby nie zjebalo znakow
$wLINKI[$i] = $wLINK
$wCZASY[$i] = $wCZAS
$wROZMIARY[$i] = $wROZMIAR

;msgbox(0,"",$wTYTULY[$i])

Next

EndFunc

Func Button1Click()
$link = "http://www.wrzuta.pl/szukaj/audio/"
$szukaj = GUICtrlRead($nazwa)
$szukaj = StringReplace($szukaj," ","+")

GUICtrlSetData($status,"Wyszukiwanie...")

$strona = _INetGetSource($link & $szukaj)

_GUICtrlListView_DeleteAllItems($lista)

if StringInStr($strona,'<p class="error_info">Brak wynik') = 0 Then
GUICtrlSetData($status,"Znaleziono")

$utwory = _StringBetween2($strona,'<div class="files">','<div class="clear ">')

ParseWrzuta($utwory)

for $a = 0 to 29

_GUICtrlListView_AddItem($lista,$wTYTULY[$a])
_GUICtrlListView_SetItem($lista,$wCZASY[$a],$a,1)
_GUICtrlListView_SetItem($lista,$wROZMIARY[$a],$a,2)

next

Else
GUICtrlSetData($status,"Nie znaleziono")
EndIf

EndFunc

Func Form1Close()
exit;
EndFunc

 

Ano i jeśli chcesz żebym dorobił do tego pobieranie to wypierdalaj - nie umiem więc nie zrobie, nie chce mi się marnować całego dnia na rozpracowywanie jak to wrzuta trzyma pliki.

html.zip

Twoja stara robi catch the clowny w Game Makerze.

Opublikowano

No tak wiedziałem że o czymś zapomniałem.

Jest w załączniku.

Twoja stara robi catch the clowny w Game Makerze.

Opublikowano

Czyści listę.

A wizualnie wystarczy pomniejszyć rozmiar okna i będzie w porządku.

Twoja stara robi catch the clowny w Game Makerze.

Opublikowano

No wpisujemy nazwe piosenki, program pobiera stronę http://www.wrzuta.pl/szukaj/audio/to+czego+szukasz, wyciąga z niej pola z informacjami o znalezionych piosenkach i dodaje je do listy w programie. Dokładny opis 'wyciągania' masz w skrypcie, bo te komentarze w funkcji ParseWrzuta powstały jako pierwsze; jeszcze przed napisaniem kodu spisałem sobie jak program ma to wyciągać z strony.

Twoja stara robi catch the clowny w Game Makerze.

Gość LastPhoenix450
Opublikowano

Program jest okej, tyle ,że wrzuta to nie najlepszy portal jeśli chodzi o muzykę, zrób na zippy szukajkę to będzie git.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...