Поскольку Facebook не позволяет нам экспортировать контактные данные наших друзей, я хочу сделать это вручную. Но так как у меня более 500 контактов, мне нужно немного автоматизировать это. Вот что я делаю:
1) Сначала я использовал аддон DownThemAll Firefox на https://www.facebook.com/friends чтобы получить ссылки на все профили моих друзей.
2) В Excel я изменил эти URL, добавив / о (или &sk = для тех, у кого нет имени пользователя) в конце каждой ссылки
3) Используя DownThemAll, я скачал все «о» страницы моих друзей.
4) Я объединил все файлы в один, используя команду windows:
copy *.* merged.txt
5) В файле merged.txt я меняю каждый знак двойной кавычки «в \», чтобы использовать его позже в файле php в качестве переменной
6) Это шаг, мне нужна твоя помощь. Я хочу разобрать этот огромный объединенный файл в хороший CSV. Я думал об использовании регулярных выражений в php.
Моя идея состоит в том, чтобы использовать такой код:
<?php
$content="here I paste everything from merged.txt";
$regex_pattern = "this is what I need from you";
preg_match_all($regex_pattern,$content,$matches);
print_r($matches);
?>
Я проверил код facebook о странице и части, которые меня интересуют, могут быть сопоставлены следующим образом:
-каждая новая запись начинается с <html lang = «en» id = «facebook» class = «no_js»> и заканчивается </ html>
-имя может быть взято из единственного элемента, имеющего class = «_ 8_2»
<a class="_8_2">name</a>
-телефон может быть взят из единственного промежутка, у которого есть dir = «ltr»
<span dir="ltr">123456789</span>
-электронная почта является единственной ссылкой на почту
<a href="mailto:[email protected]">
-скайп — единственная ссылка на callto
<a href="callto:skypelogin" class="uiLinkDark">
Пожалуйста, помните, что у некоторых пользователей есть только электронная почта или телефон только на их странице. Так что регулярное выражение должно отлавливать и те случаи.
Кто-нибудь может мне помочь? Заранее спасибо.
Кстати, я знаю, что есть более простой способ экспортировать контакты в Yahoo, а затем распечатать их. Но, пожалуйста, не предлагайте это, так как он не экспортирует номера телефонов.
Задача ещё не решена.
Других решений пока нет …