⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 get.c

📁 linux 纯C(geturl)获取网页原码并保留在本地
💻 C
字号:
#include <stdio.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <signal.h>#include <stdlib.h>#include <string.h>#include <netdb.h>#define BUF_SIZ 4096int main( int argc, char **argv) {	char buff[BUF_SIZ];	char msg[BUF_SIZ];	int s;	fd_set sockid_readable;	struct sockaddr_in server;	struct hostent *host_info;	unsigned long addr;/* Ip Adresse holen*/	host_info = gethostbyname("www.2duche.com");	memcpy( (char *)&server.sin_addr,	 host_info->h_addr, host_info->h_length );	server.sin_family = AF_INET;/*Http Port 80.*/	server.sin_port = htons(80);	printf("Createing Socket:...");/*Socket erstellen.*/	s = socket(AF_INET, SOCK_STREAM, 0);	if (s <= 0) {		printf("Error.\n");		return EXIT_SUCCESS;	} else {		printf("Ok.\n");	}	printf("Connecting with server:...");	char result;/*Mit dem Server verbinden.*/	result = connect(s,(struct sockaddr*)&server,sizeof(server));	if (result == -1) {		printf("Error.\n");		return EXIT_SUCCESS;	} else {		printf("Ok.\n");	}/*HTTP 1.1 Anfrage:*/	//char send[] = "GET /test.html HTTP/1.1\r\nHost:www.2duche.com\r\n\r\n";	char send[] = "GET /test.html HTTP/1.1\r\nAccept: */*\r\nAccept-Language: zh-cn\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)\r\nHost: www.2duche.com\r\nConnection: Close\r\n\r\n";	strcat(send, "\n");/*HTTP 1.1 Anfrage senden*/	printf("Sending Socket:...");	if (0 <= write(s, send, strlen(send))) {		printf("Ok.\n");	} else {		printf("Error.\n");		return EXIT_SUCCESS;	}/*Datei vom Server empfangen.*/	printf("Getting file:...");	int count = recv(s, buff, BUF_SIZ, 0);	while(count>0){/*'\0' an die empfangene Variable anhängen*/		buff[count] = '\0';/*Ergebnis ausgeben*/		printf("Ergebnis des Servers: ====================\n%s\n", buff);		count = recv(s, buff, BUF_SIZ, 0);	}	close(s);	printf("\r\n\r\n Socket is closed");	return EXIT_SUCCESS;		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -