И накрая – завършения код:
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
| <?php
function storeLink($url, $gathered_from) {
$query = "INSERT INTO links
(url, gathered_from)
VALUES
('$url', '$gathered_from')";
mysql_query($query) or die('Error, insert query failed');
}
$target_url = "http://www.merchantos.com/";
$userAgent = 'Googlebot/2.1 (http://www.googlebot.com/bot.html)';
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
curl_setopt($ch, CURLOPT_URL, $target_url);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$html = curl_exec($ch);
if (!$html) {
echo "<br />cURL error number:" . curl_errno($ch);
echo "<br />cURL error:" . curl_error($ch);
exit;
}
$dom = new DOMDocument();
@$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate("/html/body//a");
for ($i = 0; $i < $hrefs->length; $i++) {
$href = $hrefs->item($i);
$url = $href->getAttribute('href');
storeLink($url, $target_url);
echo "<br />Link stored: $url";
}
?> |
Какво още трябва да се знае за това
Възможностите са донякъде ограничени.
За да започнете, трябва първо да запишете в таблица от базата данни, сайтовете от които искате да извлечете линковете. Да направите скрипт, който периодично да пуска събирането на линковете. Така ще можете да виждате промените и евентуално да променяте линковете, ако ги използвате на ваши сайтове. Нека да видим и някои примери в които се използва тази технология:
- Създаване на софтуери за търсене
- Анализиране SEO оптимизацията на уебсайтове
- Публикуване на автоматично съдържание от други уебсайтове
- Създаване на RSS канали от съдържанието на уебсайтове
Законно ли е събирането на хиперлинкове?
Няма точен отгвор. Много организации, като Google, Yahoo, Microsoft и много други го правят. Притежателите на уеб страници сами желаят да бъдат включени в резултатите от търсенето в съответните търсачки. Но те сами декларират съгласие за това.
Реалния отговор е – кой и за какво събира линкове.
Законите за авторско право дават подразбиращо се право на собственост върху разработеното от и на техните автори. Но същите закони допускат използването на защитени с авторско право материали за специални случаи. Тези случаи включват използване на материалите за преценка от компетентни органи, коментари в медиите, обучение (включително размножаване на материала с учебна цел) и други. Но тези действия понякога представляват нарушение на авторското право.
Така, че бъдете внимателни, преди да ги използвате!