Compare commits
2 Commits
107a4cd640
...
12a7937218
Author | SHA1 | Date | |
---|---|---|---|
12a7937218 | |||
a68a03e628 |
|
@ -134,7 +134,7 @@ final class NodaWikidataFetcher {
|
||||||
$doc->loadXML('<section>' . trim($input) . '</section>');
|
$doc->loadXML('<section>' . trim($input) . '</section>');
|
||||||
}
|
}
|
||||||
catch (Exception $e) {
|
catch (Exception $e) {
|
||||||
throw new Exception("Failed to load DOMDocument." . PHP_EOL . $e->getMessage() . PHP_EOL . PHP_EOL . $input);
|
throw new Exception("Failed to load DOMDocument." . PHP_EOL . $e->getMessage() . PHP_EOL . PHP_EOL . '---' . $input . '---');
|
||||||
}
|
}
|
||||||
|
|
||||||
$list = $doc->getElementsByTagName("style");
|
$list = $doc->getElementsByTagName("style");
|
||||||
|
@ -224,7 +224,6 @@ final class NodaWikidataFetcher {
|
||||||
|
|
||||||
$input = str_replace("\t", " ", $input);
|
$input = str_replace("\t", " ", $input);
|
||||||
|
|
||||||
return $input;
|
|
||||||
// Remove newlines with ensuing spaces
|
// Remove newlines with ensuing spaces
|
||||||
while (strpos($input, PHP_EOL . " ") !== false) {
|
while (strpos($input, PHP_EOL . " ") !== false) {
|
||||||
$input = str_replace(PHP_EOL . " ", PHP_EOL, $input);
|
$input = str_replace(PHP_EOL . " ", PHP_EOL, $input);
|
||||||
|
@ -629,7 +628,7 @@ final class NodaWikidataFetcher {
|
||||||
|
|
||||||
$output = [];
|
$output = [];
|
||||||
|
|
||||||
$descs = [];
|
# $descs = [];
|
||||||
foreach ($checkagainstLanguage as $lang) {
|
foreach ($checkagainstLanguage as $lang) {
|
||||||
|
|
||||||
if (!empty($languagesToFetch[$lang]) && !empty($data['sitelinks'][$lang . 'wiki']) && !empty($wikilinks[$lang])) {
|
if (!empty($languagesToFetch[$lang]) && !empty($data['sitelinks'][$lang . 'wiki']) && !empty($wikilinks[$lang])) {
|
||||||
|
@ -650,7 +649,7 @@ final class NodaWikidataFetcher {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($tDescription !== '') {
|
if ($tDescription !== '') {
|
||||||
$descs[$lang] = $tDescription;
|
# $descs[$lang] = $tDescription;
|
||||||
$desc_cleaned = self::_cleanWikidataInput($tDescription);
|
$desc_cleaned = self::_cleanWikidataInput($tDescription);
|
||||||
if ($desc_cleaned !== '') {
|
if ($desc_cleaned !== '') {
|
||||||
$output[$lang] = [
|
$output[$lang] = [
|
||||||
|
@ -672,7 +671,6 @@ final class NodaWikidataFetcher {
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
# print_r($descs);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1007,7 +1005,7 @@ final class NodaWikidataFetcher {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the current description of a place.
|
* Returns the current description of a place.
|
||||||
*
|
*
|
||||||
* @param integer $onum Place ID.
|
* @param integer $onum Place ID.
|
||||||
*
|
*
|
||||||
|
@ -1029,6 +1027,29 @@ final class NodaWikidataFetcher {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current description of a tag.
|
||||||
|
*
|
||||||
|
* @param integer $tag_id Tag ID.
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
private function getTagDescription(int $tag_id):string {
|
||||||
|
|
||||||
|
$result = $this->_mysqli_noda->query_by_stmt("SELECT `tag_anmerkung`
|
||||||
|
FROM `tag`
|
||||||
|
WHERE `tag_id` = ?", "i", $tag_id);
|
||||||
|
|
||||||
|
if (!($cur = $result->fetch_row())) {
|
||||||
|
$result->close();
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
$result->close();
|
||||||
|
|
||||||
|
return $cur[0];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function for entering base information about a place from wikidata.
|
* Function for entering base information about a place from wikidata.
|
||||||
*
|
*
|
||||||
|
@ -1239,14 +1260,14 @@ final class NodaWikidataFetcher {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($data['claims']['P625'])) {
|
if (isset($data['claims']['P625'])) {
|
||||||
$latitude_wd = $data['claims']['P625'][0]['mainsnak']['datavalue']['value']['latitude'];
|
$latitude_wd = \filter_var($data['claims']['P625'][0]['mainsnak']['datavalue']['value']['latitude'], FILTER_VALIDATE_FLOAT);
|
||||||
$longitude_wd = $data['claims']['P625'][0]['mainsnak']['datavalue']['value']['longitude'];
|
$longitude_wd = \filter_var($data['claims']['P625'][0]['mainsnak']['datavalue']['value']['longitude'], FILTER_VALIDATE_FLOAT);
|
||||||
}
|
}
|
||||||
|
|
||||||
NodaBatchInserter::linkNodaForPlace($this->_mysqli_noda, $onum, $nodaLinks, $erfasst_von);
|
NodaBatchInserter::linkNodaForPlace($this->_mysqli_noda, $onum, $nodaLinks, $erfasst_von);
|
||||||
|
|
||||||
$this->_mysqli_noda->autocommit(false);
|
$this->_mysqli_noda->autocommit(false);
|
||||||
if (!empty($tgn_id)) {
|
if (!empty($tgn_id) and is_numeric($tgn_id)) {
|
||||||
|
|
||||||
$updateStmt = $this->_mysqli_noda->do_prepare("UPDATE `orte`
|
$updateStmt = $this->_mysqli_noda->do_prepare("UPDATE `orte`
|
||||||
SET `ort_land` = ?
|
SET `ort_land` = ?
|
||||||
|
@ -1257,7 +1278,7 @@ final class NodaWikidataFetcher {
|
||||||
unset($updateStmt);
|
unset($updateStmt);
|
||||||
|
|
||||||
}
|
}
|
||||||
if (!empty($geonames_id)) {
|
if (!empty($geonames_id) and is_numeric($geonames_id)) {
|
||||||
|
|
||||||
$updateStmt = $this->_mysqli_noda->do_prepare("UPDATE `orte`
|
$updateStmt = $this->_mysqli_noda->do_prepare("UPDATE `orte`
|
||||||
SET `ort_geonames` = ?
|
SET `ort_geonames` = ?
|
||||||
|
@ -1342,17 +1363,7 @@ final class NodaWikidataFetcher {
|
||||||
$datafromwiki = '"' . $datafromwiki . '" - (Wikipedia (' . $lang . ') ' . date("d.m.Y") . ')';
|
$datafromwiki = '"' . $datafromwiki . '" - (Wikipedia (' . $lang . ') ' . date("d.m.Y") . ')';
|
||||||
$datafromwiki = str_replace("'", "´", MD_STD::preg_replace_str("/\&\#91\;[0-9]\&\#93\;/", '', $datafromwiki));
|
$datafromwiki = str_replace("'", "´", MD_STD::preg_replace_str("/\&\#91\;[0-9]\&\#93\;/", '', $datafromwiki));
|
||||||
|
|
||||||
$cergebnis = $this->_mysqli_noda->query_by_stmt("SELECT `tag_anmerkung`
|
$tag_anmerkung = $this->getTagDescription($tag_id);
|
||||||
FROM `tag`
|
|
||||||
WHERE `tag_id` = ?", "i", $tag_id);
|
|
||||||
|
|
||||||
if (!($cinfo = $cergebnis->fetch_row())) {
|
|
||||||
$cergebnis->close();
|
|
||||||
return $output;
|
|
||||||
}
|
|
||||||
$cergebnis->close();
|
|
||||||
|
|
||||||
$tag_anmerkung = $cinfo[0];
|
|
||||||
|
|
||||||
$this->_mysqli_noda->autocommit(false);
|
$this->_mysqli_noda->autocommit(false);
|
||||||
|
|
||||||
|
|
|
@ -255,9 +255,6 @@ Transclusion expansion time report (%,ms,calls,template)
|
||||||
"Start of parsed Wikipedia text should be:" . PHP_EOL . PHP_EOL . $expected . PHP_EOL . PHP_EOL . 'Real start text is: ' . PHP_EOL . PHP_EOL . substr($output, 0, 250)
|
"Start of parsed Wikipedia text should be:" . PHP_EOL . PHP_EOL . $expected . PHP_EOL . PHP_EOL . 'Real start text is: ' . PHP_EOL . PHP_EOL . substr($output, 0, 250)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue
Block a user