Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
#1

Создание RSS агрегатора - C++

04.07.2012, 21:23. Просмотров 1645. Ответов 30
Метки нет (Все метки)

возникла срочная необходимость создать простенький RSS,который получает новости,а отображает их в дефолтном браузере,однако ни с чем подобным не сталкивался прежде.я не прошу готовый код,я лишь прошу подсказать мне какие шаги нужно сделать,если вы знаете уже сделанный пример,скиньте пожалуйста ссылку
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2012, 21:23     Создание RSS агрегатора
Посмотрите здесь:

Поиск по .txt файлу (RSS) - C++
Доброго времени суток. Пытаюсь придумать что-нибудь, чтобы работать с RSS без крутых кодов, что-то типа индусского кода. Сделал парсинг...

Создание RSS - PHP
Здрасте. Подскажите я уже разобрался как создать xml -файл через данные с БД.Меня интересует вопрос: какими способами обновляют данные...

Создание Rss ридера - PHP
Мне нужно прочитать RSS канал и вывести его на страничку, это можно сделать с помощью уже готовых скриптов, они слишком грамоздкие и...

Создание RSS реадера - Программирование Android
Я хочу прикрутить RSS ленту к pull to refresh Тоесть не выводить на екран всю ленту, а частями при перетягивании екрана не могу...

Создание RSS ленты канала YouTube - PHP
Всем здрасти! Понадобилось создать RSS ленту своего канала YouTube. Посидел, погуглил и накопал следующий рецепт: ...

Создание RSS на базе Material Design - Программирование Android
Добрый день! Подсел на тему Материал Дизайн. Уж очень она мне понравилась. Сам никогда не разрабатывал приложения под андроид, а тут...

Создание RSS-reader с оффлайн базой - C#
нужно создать программу в Windows Forms, т.е. рсс ридер с оффлайн базой,но вся проблема для меня - именно оффлайн база! как её сделать ?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
09.07.2012, 17:37  [ТС]     Создание RSS агрегатора #21
тут файл и код
Вложения
Тип файла: zip Архив ZIP - WinRAR.zip (716 байт, 11 просмотров)
Avazart
7101 / 5278 / 267
Регистрация: 10.12.2010
Сообщений: 23,279
Записей в блоге: 17
09.07.2012, 17:44     Создание RSS агрегатора #22
Пробовал открыть свой файл через браузер?
Миниатюры
Создание RSS агрегатора  
alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
09.07.2012, 17:49  [ТС]     Создание RSS агрегатора #23
у меня сафари открывает
Вложения
Тип файла: rar архив.rar (2.7 Кб, 6 просмотров)
Avazart
7101 / 5278 / 267
Регистрация: 10.12.2010
Сообщений: 23,279
Записей в блоге: 17
09.07.2012, 17:54     Создание RSS агрегатора #24
Нужно как-то делать проверку что xml не пуст.

Попробуй код из википедии http://ru.wikipedia.org/wiki/XML

Просмотреть код
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="UTF-8"?>
<recipe name="хлеб" preptime="5" cooktime="180">
  <title>Простой хлеб</title>
  <composition>
    <ingredient amount="3" unit="стакан">Мука</ingredient>
    <ingredient amount="0.25" unit="грамм">Дрожжи</ingredient>
    <ingredient amount="1.5" unit="стакан">Тёплая вода</ingredient>
    <ingredient amount="1" unit="чайная ложка">Соль</ingredient>
  </composition>
  <instructions>
    <step>Смешать все ингредиенты и тщательно замесить.</step>
    <step>Закрыть тканью и оставить на один час в тёплом помещении.</step>
    <!-- <step>Почитать вчерашнюю газету.</step> - это сомнительный шаг... -->
    <step>Замесить ещё раз, положить на противень и поставить в духовку.</step>
  </instructions>
</recipe>


Добавлено через 3 минуты
у меня сафари открывает
А у меня Opera нет
Миниатюры
Создание RSS агрегатора  
alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
09.07.2012, 17:59  [ТС]     Создание RSS агрегатора #25
я скопировал текст
Вложения
Тип файла: rar архив.rar (5.5 Кб, 8 просмотров)
Avazart
7101 / 5278 / 267
Регистрация: 10.12.2010
Сообщений: 23,279
Записей в блоге: 17
09.07.2012, 18:08     Создание RSS агрегатора #26
Таже ошибка.

Вообщем проблема как я понимаю самом xml, плюс ты не делал проверки.

Добавлено через 6 минут
Наверное не правильно скачал или скопировал xml там в начале левые символы если их убрать, то открывается нормально.
Миниатюры
Создание RSS агрегатора  
alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
09.07.2012, 18:21  [ТС]     Создание RSS агрегатора #27
а как их убрать?
Avazart
7101 / 5278 / 267
Регистрация: 10.12.2010
Сообщений: 23,279
Записей в блоге: 17
09.07.2012, 18:22     Создание RSS агрегатора #28
а как их убрать?
А как они там появились?
Я просто в блокноте рукам вырезал и все.
alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
09.07.2012, 18:24  [ТС]     Создание RSS агрегатора #29
вот так я полчаю файл
C++
1
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include<iostream>
#include<fstream>
#include<WinSock2.h>
#include<Windows.h>
#include<cstring>
#include <stdio.h>
#include<new>
 
using namespace std;
 
#pragma comment(lib, "ws2_32.lib")
 
WSADATA wsd;
SOCKET s;
struct sockaddr_in addr;
struct hostent * ip;
char query[128];
 
 
std::ofstream F("C:\\data.xml",std::ios::binary);
 
int main()
{
    
    WSAStartup(MAKEWORD(2,2),&wsd);
 
    int sock=socket(AF_INET,SOCK_STREAM,0);
    ip=gethostbyname("kp.ua");
    
    addr.sin_family=AF_INET;
    memcpy(&(addr.sin_addr),ip->h_addr_list[0],sizeof(addr.sin_addr));
    addr.sin_port=htons(80);
 
    connect(sock,(struct sockaddr*)&addr,sizeof(addr));
 
    char query[8096];
  
 
    char *buffer = new char[1024];
 
    char * p = new char[1024];
 
    strcpy(buffer,"");
    int k;
    strcpy(query,"GET /rss/feed.xml HTTP/1.0\r\nHost:kp.ua\r\n\r\n");
 
    send(sock,query,strlen(query),0);
    
 
    int h=1;
    while ((k=recv(sock,buffer,1024,0))>0)
    {
        p=strstr(buffer,"\r\n\r\n");
        if (p!=NULL && h)
        {
            F.write(p+4,k);
            h=0;
        }
        else
        {
        F.write(buffer, k);
        }
        strcpy(buffer,"");
    }
 
    F.close();
   
    closesocket(s);
 
    WSACleanup();
 
    system("pause");
 
    return 0;
}
Avazart
7101 / 5278 / 267
Регистрация: 10.12.2010
Сообщений: 23,279
Записей в блоге: 17
09.07.2012, 18:27     Создание RSS агрегатора #30
Ну я с сокетами не имел дела так что не подскажу...
Но думаю проблема в этом...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2012, 18:28     Создание RSS агрегатора
Еще ссылки по теме:

RSS - HTML, CSS
как сделать так,чтобы картинка подписки на RSS была в адресной строке?!

rss - DLE
хочу поставит на сайт рсс летну новостей . захожу в &quot;Управление RSS информерами на сайте&quot; ввожу адрес...

RSS-новости - C# ASP.NET
Хочу сделать RSS новости со своего сайта, но не совсем понимаю как. может подскажите какие ссылки!? :) буду очень признательна

RSS-Magazine
См. тему &quot;Есть несколько идей&quot;. Описание: Я решил заниматься одновременно интересным и несложным проектом - RSS-Magazine. Как я уже...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
alexey31415
59 / 59 / 3
Регистрация: 16.05.2010
Сообщений: 632
09.07.2012, 18:28  [ТС]     Создание RSS агрегатора #31
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    int h=1;
    while ((k=recv(sock,buffer,1024,0))>0)
    {
        p=strstr(buffer,"\r\n\r\n");
        if (p!=NULL && h)
        {
            //fwrite(p+4,sizeof(char),k,out);
           /* f.write(p+4,k);*/
            F.write(p+4,k);
            h=0;
        }
        else
        {
            //fwrite(buf,sizeof(char),k,out);
            /*f.write(buf,k);*/
            F.write(buffer, k);
        }
        strcpy(buffer,"");
    }
вот здесь наверно,но в чём я не знаю
Yandex
Объявления
09.07.2012, 18:28     Создание RSS агрегатора
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru