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

Пожалуйста очень срочно нужно написать программу, определяющую полезность веб-страниц. - C++

Восстановить пароль Регистрация
 
Leandrio
Сообщений: n/a
23.05.2011, 20:50     Пожалуйста очень срочно нужно написать программу, определяющую полезность веб-страниц. #1
Нужно написать программу, определяющую полезность веб страниц. Необходимо список ссылок ввести в динамический массив, откуда программа случайно будет выбирать какую нибудь ссылку и переходить по ней. Программа должна скачать текст с веб страницы и подсчитать полезность(кол-во входящих слов(учеб, книг, институт,обрзован,тетрад,ручк,карандаш,парт,компьютер)). Если встречается слово учеб, полезность умножается на 10 , если книмг, то на 5, институт на 5, образован, на 10, компьютер, на 10, остальные не домножаются. Ввести в Memo результат:ссылку и рядом его полезность. Если по сравнению с предыдущим полезность упала, то случайно выбрать из массива ссылку, проверить ее на полезность и сравнить с предыдущим вариантом, если опять меньше, повторить операцию.Надо, чтобы полезность постоянно росла до определенного момента по усмотрению написателя. Очень срочно нужно написать эту программу к зачету. помогите пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2011, 20:50     Пожалуйста очень срочно нужно написать программу, определяющую полезность веб-страниц.
Посмотрите здесь:

C++ Уважаемы программисты помогите пожалуйста срочно нужно
Пом0гите пожалуйста. Очень нужно..завтра зачет сдавать... C++
C++ Очень срочно надо решить вопрос Пожалуйста
алгоритм, ступенчатая аннотация, очень срочно нужно C++
C++ Помогите пожалуйста написать программу на C++ ( очень нужно )
Помогите решить задачу на Сортировку массива. (очень срочно, нужно на завтра) C++
Написать программу, определяющую местоположение улитки C++
C++ Объясните программу,пожалуйста.Очень нужно!

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
24.05.2011, 00:45     Пожалуйста очень срочно нужно написать программу, определяющую полезность веб-страниц. #2
сохраняет текст страницы "www.boost.org/doc/libs/1_46_1/doc/html/boost_asio/example/http/client/sync_client.cpp" в файл 1.html
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
#include <iostream>
#include <istream>
#include <ostream>
#include <fstream>
#include <string>
#include <boost/asio.hpp>
using boost::asio::ip::tcp;
 
int main(int argc, char* argv[]){
  try{
      //std::cout << "  sync_client [url]www.boost.org[/url] /LICENSE_1_0.txt\n";
    std::string host="www.boost.org";
    std::string get="/doc/libs/1_46_1/doc/html/boost_asio/example/http/client/sync_client.cpp";
 
    boost::asio::io_service io_service;
 
    // Get a list of endpoints corresponding to the server name.
    tcp::resolver resolver(io_service);
    tcp::resolver::query query(host, "http");
    tcp::resolver::iterator endpoint_iterator = resolver.resolve(query);
    tcp::resolver::iterator end;
 
    // Try each endpoint until we successfully establish a connection.
    tcp::socket socket(io_service);
    boost::system::error_code error = boost::asio::error::host_not_found;
    while (error && endpoint_iterator != end){
      socket.close();
      socket.connect(*endpoint_iterator++, error);
    }
    if (error)
      throw boost::system::system_error(error);
 
    // Form the request. We specify the "Connection: close" header so that the
    // server will close the socket after transmitting the response. This will
    // allow us to treat all data up until the EOF as the content.
    boost::asio::streambuf request;
    std::ostream request_stream(&request);
    request_stream << "GET " << get << " HTTP/1.0\r\n";
    request_stream << "Host: " << host << "\r\n";
    request_stream << "Accept: */*\r\n";
    request_stream << "Connection: close\r\n\r\n";
 
    // Send the request.
    boost::asio::write(socket, request);
 
    // Read the response status line. The response streambuf will automatically
    // grow to accommodate the entire line. The growth may be limited by passing
    // a maximum size to the streambuf constructor.
    boost::asio::streambuf response;
    boost::asio::read_until(socket, response, "\r\n");
 
    // Check that response is OK.
    std::istream response_stream(&response);
    std::string http_version;
    response_stream >> http_version;
    unsigned int status_code;
    response_stream >> status_code;
    std::string status_message;
    std::getline(response_stream, status_message);
    if (!response_stream || http_version.substr(0, 5) != "HTTP/"){
      std::cout << "Invalid response\n";
      return 1;
    }
    if (status_code != 200){
      std::cout << "Response returned with status code " << status_code << "\n";
      return 1;
    }
 
    // Read the response headers, which are terminated by a blank line.
    boost::asio::read_until(socket, response, "\r\n\r\n");
    std::ofstream ofs("1.html");
 
    // Read until EOF, writing data to output as we go.
    while (boost::asio::read(socket, response,
                             boost::asio::transfer_at_least(1), error)){
        ofs << &response;
    }
    ofs.close();
    if (error != boost::asio::error::eof)
      throw boost::system::system_error(error);
  }
  catch (std::exception& e){
    std::cout << "Exception: " << e.what() << "\n";
  }
 
  return 0;
}
Yandex
Объявления
24.05.2011, 00:45     Пожалуйста очень срочно нужно написать программу, определяющую полезность веб-страниц.
Ответ Создать тему
Опции темы

Текущее время: 04:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru