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

C++

Войти
Регистрация
Восстановить пароль
 
jack wilshere
2 / 2 / 0
Регистрация: 27.05.2014
Сообщений: 156
#1

Автоматическое формирование html – страниц, c++ - C++

22.02.2015, 17:40. Просмотров 359. Ответов 5
Метки нет (Все метки)

Добрый день!!! Передо мной стоит следующая задача - создать программу, которая автоматически закачивает указанную пользователем страницу из интернета, модифицирует её и, затем, открывает в браузере. В качестве модификации можно выбрать любое небольшое предложение (например, "Добрый день!"). Данная программа должна быть реализована в пакете VS 2010 express. Заранее всем спасибо!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2015, 17:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Автоматическое формирование html – страниц, c++ (C++):

просмотр html страниц - C++
помогите, пожалуйста, написать программу для просмотра html страниц на c++

Генерация HTML страниц - C++ Builder
И снова здравствуйте. Пишу на билдере. У меня такая задача: программа получает данные и должна сгенерировать html-файл с этими данными....

Реализация WEB-сервера (HTTP), сделать поставку браузеру html страниц - C++ Builder
Здравствуйте, уважаемые разработчики. У меня есть задача реализовать систему компьютерного тестирования учащихся. Для проведения...

Для нумерации страниц понадобилось К цифр. Сколько страниц в книге? - Visual C++
Для нумерации страниц понадобилось К цифр. Сколько страниц в книге? Если указанное число не может быть суммой цифр номеров страниц, то...

Парсер HTML страниц - C++
Здравствуйте, Начал учить C++, интересует информация, исходник парсера HTML страницы. Очень был бы благодарен такой информацией ...

c++ парсер html страниц - C++
Хочу изучить парсер html страниц через с++, но нигде не могу найти нужной литературы, даже примерно где искать не знаю. В поисковике уже...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
23.02.2015, 09:14 #2
На чем застряли?
0
jack wilshere
2 / 2 / 0
Регистрация: 27.05.2014
Сообщений: 156
23.02.2015, 11:58  [ТС] #3
Откровенно говоря, я вообще не знаю с чего начать... Хотя в принципе, у меня есть программа, копирующая html-код с заданной страницы, написанная на С++... Но как вставить в неё небольшое предложение и затем открыть в браузере, я не знаю...
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
23.02.2015, 12:00 #4
Выкладывай код
0
taras atavin
Ушёл с форума.
3569 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
23.02.2015, 12:03 #5
Для начала определитесь, куда следует вставлять предложение. Страница ведь большая, состоит из множества элементов, а предложение - это один новый элемент, или даже часть элемента. При этом оно может содержать вложенные элементы, но всё равно на странице есть элементы уровнем много выше даже такого предложения. Вот когда определитесь, куда именно хотите вставлять, то задача даже не решится, а будет уже решена. Именно уже и только что. Останется это решение записать.
0
jack wilshere
2 / 2 / 0
Регистрация: 27.05.2014
Сообщений: 156
23.02.2015, 12:16  [ТС] #6
Правда, я не сам его писал, в инете нашёл... Хотя вроде всё относительно понятно в нём
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include "stdafx.h"
#include<conio.h>
#include<ctype.h>
#include<math.h>
#include<stdlib.h>
#include<iostream>
#include<fstream>
#include<string.h>
#include<stdio.h>
#include <locale.h>
#include <string>
#include <fstream>
#include "winsock2.h"
using namespace std;
#pragma comment (lib,"WSock32.Lib")
// Необходимые дефайны
#define request "GET /index.shtml HTTP/1.1\r\nHost: www.currencyhistory.ru\r\n\r\n" //HTML запрос.
#define MAX_PACKET_SIZE         65535
int main(int argc, char* argv[])
{
int a;
setlocale(LC_ALL,"Rus");
system("mode con cols=126 lines=59");
 
        WSADATA         ws;
        SOCKET          s;
        sockaddr_in     adr;
        hostent*        hn;
        char            buff [MAX_PACKET_SIZE];
 
        // Init
        if (WSAStartup (0x0202, &ws) != 0)
        {
                // Error
                return -1;
        }
  // Создаём сокет
        if (INVALID_SOCKET == (s = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP) ) )
        {
                // Error
                return -1;
        }
 // Получаем адрес
        if (NULL == ( hn = gethostbyname ("www.currencyhistory.ru") ) )
        {
                // Error
                return -1;
        }
 
        // Заполняем  поля структуры adr для использование ее в connect
        adr.sin_family                          = AF_INET;
        adr.sin_addr.S_un.S_addr        = *(DWORD* ) hn->h_addr_list[0];
        adr.sin_port                            = htons (80);
 
        // Устанавливаем соединение с сервером
        if (SOCKET_ERROR == connect (s, (sockaddr* )&adr,  sizeof (adr) ) )
        {
                // Error
                int res = WSAGetLastError ();
                //return -1;
        }
 
        // Посылаем запрос серверу
        if (SOCKET_ERROR == send (s, request, sizeof (request), 0) )
        {
                // Error
                int res = WSAGetLastError ();
                return -1;
        }
 // Ждём ответа
        int len = 0;
        do
        {
                if (SOCKET_ERROR == (len = recv (s, (char *) &buff, MAX_PACKET_SIZE, 0) ) )
                {
                        int res = WSAGetLastError ();
                        return -1;
                }
                        for (int i = 0; i<len; i++);
                                //printf ("%c", buff [i]);
 
        }
        while (len!=0); //Получаем данные по частям, пока не len != 0.
 
        if (SOCKET_ERROR == closesocket (s) )   // закрываем соединенеие. *
        {
                // Error
                return -1;
        }
Добавлено через 31 секунду
Вставить можно в абсолютно любое место, куда получиться)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2015, 12:16
Привет! Вот еще темы с ответами:

Автоматическое формирование примечаний - PHP
Всем привет. Не могу решить такую задачку: Необходимо чтоб при написании цифры в ячейке автоматически формировалось примечание (всего 37...

Автоматическое формирование ссылок - HTML, CSS
Доброго времени суток! Задача следующая: Имеется папка с названиями страниц 1.htm, 2.htm, 3.htm и т.д. Есть страница со списком...

Автоматическое формирование интерфейса - C#
Добрый вечер. Помогите написать код, в котором при добавлении в класс нового свойства автоматически добавляется текстовое поле на экранную...

DataGridView: автоматическое формирование таблицы - C#
хочу чтобы в моем контроле datagridview формировалась структура. Ну то есть кол-во столбцов,название их.... ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.02.2015, 12:16
Ответ Создать тему
Опции темы

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