Reading web pages
Timon Gehr
timon.gehr at gmx.ch
Thu Jan 19 11:24:57 PST 2012
On 01/19/2012 04:30 PM, Xan xan wrote:
> Hi,
>
> I want to simply code a script to get the url as string in D 2.0.
> I have this code:
>
> //D 2.0
> //gdmd-4.6
> import std.stdio, std.string, std.conv, std.stream;
> import std.socket, std.socketstream;
>
> int main(string [] args)
> {
> if (args.length< 2) {
> writeln("Usage:");
> writeln(" ./aranya {<url1>,<url2>, ...}");
> return 0;
> }
> else {
> foreach (a; args[1..$]) {
> Socket sock = new TcpSocket(new InternetAddress(a, 80));
> scope(exit) sock.close();
> Stream ss = new SocketStream(sock);
> ss.writeString("GET" ~ a ~ " HTTP/1.1\r\n");
> writeln(ss);
> }
> return 0;
> }
> }
>
>
> but when I use it, I receive:
> $ ./aranya http://www.google.com
> std.socket.AddressException at ../../../src/libphobos/std/socket.d(697):
> Unable to resolve host 'http://www.google.com'
>
> What fails?
>
> Thanks in advance,
> Xan.
The protocol specification is part of the get request.
./aranaya www.google.com
seems to actually connect to google. (it still does not work fully, I
get back 400 Bad Request, but maybe you can figure it out)
More information about the Digitalmars-d-learn
mailing list