Aktywne Wpisy
restofme +628
Napisałem ten komentarz pod znaleziskiem 44-latek spędził niemal dobę na SOR-ze. Był po udarze i trafił na laryngologię.
Ktoś zasugerował że dobrze go tu wrzucić.
To ja coś z życia. Historia taka jak tu. Udar SOR itp. Długo będzie ale mam nadzieję że coś wniosę.
Jak się ogarnąłem to przez moment pisałem coś na Mirko
Chce Wam opowiedzieć swoją historię trochę terapeutycznie a trochę Wam ku przestrodze.
Nie chce pisać o szpitalach,
Ktoś zasugerował że dobrze go tu wrzucić.
To ja coś z życia. Historia taka jak tu. Udar SOR itp. Długo będzie ale mam nadzieję że coś wniosę.
Jak się ogarnąłem to przez moment pisałem coś na Mirko
Chce Wam opowiedzieć swoją historię trochę terapeutycznie a trochę Wam ku przestrodze.
Nie chce pisać o szpitalach,
daeun +82
W tym wpisie wrzucamy wszystkie kobiece RED FLAGI dyskwalifikujące je jako potencjalne partnerki, matki czy małżonki. Ja zaczynam
1. Tatuaże - widzisz taki brudnopis i od razu wiesz że trafił ci sie egzemplarz z defektem, nieprzepracowanymi traumami wymagającymi dlugotrwalej terapii, której w poczatkowym okresie dziecinstwa zabrakło silnych wzorców i autorytetów
#tatuaze #bekazpodludzi #rozowepaski #logikarozowychpaskow #zwiazki #glupiewykopowezabawy #tatuazboners
1. Tatuaże - widzisz taki brudnopis i od razu wiesz że trafił ci sie egzemplarz z defektem, nieprzepracowanymi traumami wymagającymi dlugotrwalej terapii, której w poczatkowym okresie dziecinstwa zabrakło silnych wzorców i autorytetów
#tatuaze #bekazpodludzi #rozowepaski #logikarozowychpaskow #zwiazki #glupiewykopowezabawy #tatuazboners
Mam problem z makro. Niestety jestem Amatorem- w VBA (wiedza polega na losowym edytowaniu kodu).
Dodatkowy problem to to, że makro ma działać w środowisku firmowym, na pobieraniu danych ze stron zabezpieczonych dwu etapową weryfikacją. Co ciekawe to już mam za sobą – makro odpytuje o hasło, makro akceptuje klucz weryfikacyjny, tworzy cookie itd. Itp.
Niestety format pobranych danych bardzo mi nie odpowiada, bo jest to kod źródłowy strony, a nie sama strona z wartościami. Same wartości są pobrane, ale ukryte w HTML'owych komendach.
Jak zrobić by skoroszyt został sformatowany z wartościami pobranymi danymi np. tak by nie było widocznego kodu HTML a każda kolejna wartość była w osobnej komórce. Właściwie tak byśmy widzieli stronę, która nas iteruje w Excelu, ale bez szaty graficznej, jedynie tekst, który jest umiejscowiony niemal identycznie (jeżeli chodzi o szerokość i wysokość) jak na stronie w przeglądarce.
Przed wprowadzeniem podwójnej weryfikacji korzystałem z funkcji QueryTables.Add, która działała cudowie. Obecnie nie jestem wstanie tego dokonać (sama strona nie uległa zmianie).
Przedtem dane prezentowały się następująco:
Dane sformatowane
Obecnie:
Chaos z przeplatanym językiem HTML
Fragment makra który, obecnie funkcjonuje (gdzie mamy weryfikacje i pobranie danych):
ThisURL = "https://jakaś strona dynamiczna"
Dim H As Object
Set H = CreateObject("WinHTTP.WinHTTPRequest.5.1")
H.SetAutoLogonPolicy 0
H.SetClientCertificate "CURRENT_USER\MY\" & Environ("USERNAME")
H.SetTimeouts 0, 0, 0, 0
H.Open "GET", ThisURL, False
H.SetRequestHeader "Cookie", VBAMid_v1
H.Send
H.WaitForResponse
DoEvents
A tak kiedyś było (gdzie NIE mamy weryfikacje, ale za to dane były formatowane i prezentowały się przejrzyście ):
Sheets("XXX").Range("A1:U15000").ClearContents
With Sheets("XXX").QueryTables.Add(Connection:= "URL; "https://jakaś strona dynamiczna", Destination:=Sheets("XXX ").Range("$A$1"))
.Name = "Macro"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
Jak zrobić tak by w kodzie weryfikacyjnym wrzucić również formatowanie? Zwykłe zastąpienie lub dopisywanie parametrów tym razem nie daje efektu np.:
Z pierwszego kodu zamiana linii:
ThisURL = "https://jakaś strona dynamiczna"
Na:
ThisURL=QueryTables.Add(Connection:="URL; "https://jakaś strona dynamiczna" , Destination:=Sheets("XXX ").Range("$A$1"))
Lub np. na:
ThisURL = "https://jakaś strona dynamiczna"
With Sheets("XXX").QueryTables.Add(Connection:= "URL; " ThisURL" , Destination:=Sheets("XXX ").Range("$A$1"))
lub też dopisują parametry z drugiego kodu .RowNumbers = False .FillAdjacentFormulas = False itd itp do pierwszego makra nie daje efektu. Bardzo bym prosił o pomoc.
https://stackoverflow.com/questions/62369756/error-when-scraping-data-from-a-given-website
Tylko w Twoim przypadku będzie to coś takiego:
D.body.innerHTML = H.ResponseText
wartosci = D.getElementsByTag("td").outerHTML
lub
wartosci = D.getElementsByClassName("nazwa klasy td lub div").outerHTML
Kombinuj, ale wygląda na dużo zabawy.