forked from lolcat/4get
1
0
Fork 0

fixed google piece of shit website i hate it so much

This commit is contained in:
lolcat 2024-08-02 21:25:39 -04:00
parent beb08f46e2
commit 36993013e5
1 changed files with 132 additions and 112 deletions

View File

@ -799,128 +799,147 @@ class google{
$title = "Notice";
}
$description = [];
$as =
$div =
$this->fuckhtml
->getElementsByTagName(
"a"
"div"
);
if(count($as) !== 0){
// probe for related searches div, if found, ignore it cause its shit
$probe =
$this->fuckhtml
->getElementsByAttributeValue(
"role",
"list",
$div
);
$first = true;
// also probe for children
if(count($probe) === 0){
foreach($as as $a){
$probe =
$this->fuckhtml
->getElementsByClassName(
$this->getstyle(
[
"flex-shrink" => "0",
"-moz-box-flex" => "0",
"flex-grow" => "0",
"overflow" => "hidden"
]
),
$div
);
}
$text_link =
$this->fuckhtml
->getTextContent(
$a
);
if(count($probe) === 0){
if(stripos($text_link, "repeat the search") !== false){
$description = [];
$last_page = true;
break 2;
}
$as =
$this->fuckhtml
->getElementsByTagName(
"a"
);
$parts =
explode(
$a["outerHTML"],
$card["innerHTML"],
2
);
if(count($as) !== 0){
$card["innerHTML"] = $parts[1];
$first = true;
$value =
preg_replace(
'/ +/',
" ",
foreach($as as $a){
$text_link =
$this->fuckhtml
->getTextContent(
$parts[0],
false,
false
)
$a
);
if(stripos($text_link, "repeat the search") !== false){
$last_page = true;
break 2;
}
$parts =
explode(
$a["outerHTML"],
$card["innerHTML"],
2
);
$card["innerHTML"] = $parts[1];
$value =
preg_replace(
'/ +/',
" ",
$this->fuckhtml
->getTextContent(
$parts[0],
false,
false
)
);
if(strlen(trim($value)) !== 0){
$description[] = [
"type" => "text",
"value" => $value
];
if($first){
$description[0]["value"] =
ltrim($description[0]["value"]);
}
}
$first = false;
$description[] = [
"type" => "link",
"url" =>
$this->fuckhtml
->getTextContent(
$a["attributes"]
["href"]
),
"value" => $text_link
];
}
$text =
$this->fuckhtml
->getTextContent(
$card["innerHTML"],
false,
false
);
if(strlen(trim($value)) !== 0){
if(strlen(trim($text)) !== 0){
$description[] = [
"type" => "text",
"value" => $value
"value" =>
rtrim(
$text
)
];
if($first){
$description[0]["value"] =
ltrim($description[0]["value"]);
}
}
$first = false;
$description[] = [
"type" => "link",
"url" =>
$this->fuckhtml
->getTextContent(
$a["attributes"]
["href"]
),
"value" => $text_link
];
}
$text =
$this->fuckhtml
->getTextContent(
$card["innerHTML"],
false,
false
);
if(count($description) !== 0){
if(strlen(trim($text)) !== 0){
$description[] = [
"type" => "text",
"value" =>
rtrim(
$text
)
$out["answer"][] = [
"title" => $title,
"description" => $description,
"url" => null,
"thumb" => null,
"table" => [],
"sublink" => []
];
}
}else{
// @TODO: Check if this ever gets populated without giving me garbage
/*
$text =
$this->fuckhtml
->getTextContent(
$card
);
if($text != ""){
$description[] = [
"type" => "text",
"value" => $text
];
}*/
}
if(count($description) !== 0){
$out["answer"][] = [
"title" => $title,
"description" => $description,
"url" => null,
"thumb" => null,
"table" => [],
"sublink" => []
];
}
}
@ -2451,6 +2470,7 @@ class google{
$this->getstyle(
[
"outline-offset" => "-1px",
"outline-width" => "1px",
"display" => "flex",
"flex-direction" => "column",
"flex-grow" => "1"