Apurva Umredkar commited on
Commit
d8f06d4
Β·
1 Parent(s): 3bad72c

added backend functionality

Browse files
This view is limited to 50 files because it contains too many changes. Β  See raw diff
Files changed (50) hide show
  1. Dockerfile +11 -2
  2. buffalo_rag/api/main.py +161 -0
  3. buffalo_rag/api/static/asset-manifest.json +10 -0
  4. buffalo_rag/api/static/index.html +1 -0
  5. buffalo_rag/api/static/static/js/main.55953463.js +0 -0
  6. buffalo_rag/api/static/static/js/main.55953463.js.LICENSE.txt +59 -0
  7. buffalo_rag/api/static/static/js/main.55953463.js.map +0 -0
  8. buffalo_rag/embeddings/chunker.py +303 -0
  9. buffalo_rag/frontend/__pycache__/flask_app.cpython-312.pyc +0 -0
  10. buffalo_rag/frontend/__pycache__/flask_app.cpython-39.pyc +0 -0
  11. {frontend β†’ buffalo_rag/frontend}/app.py +0 -0
  12. {frontend β†’ buffalo_rag/frontend}/flask_app.py +1 -1
  13. {frontend β†’ buffalo_rag/frontend}/static/css/styles.css +0 -0
  14. {frontend β†’ buffalo_rag/frontend}/static/img/ub.png +0 -0
  15. {frontend β†’ buffalo_rag/frontend}/static/js/app.js +0 -0
  16. {frontend β†’ buffalo_rag/frontend}/templates/index.html +0 -0
  17. buffalo_rag/model/__pycache__/rag.cpython-312.pyc +0 -0
  18. buffalo_rag/model/__pycache__/rag.cpython-39.pyc +0 -0
  19. buffalo_rag/model/rag.py +139 -0
  20. buffalo_rag/scraper/scraper.py +380 -0
  21. buffalo_rag/vector_store/__pycache__/db.cpython-312.pyc +0 -0
  22. buffalo_rag/vector_store/__pycache__/db.cpython-39.pyc +0 -0
  23. buffalo_rag/vector_store/db.py +213 -0
  24. data/processed/chunks.json +0 -0
  25. data/query_log.jsonl +18 -0
  26. data/raw/0000_www_buffalo_edu.json +127 -0
  27. data/raw/0001_www_buffalo_edu.json +66 -0
  28. data/raw/0002_www_buffalo_edu.json +59 -0
  29. data/raw/0003_www_buffalo_edu.json +201 -0
  30. data/raw/0004_ubisss_buffalo_edu.json +32 -0
  31. data/raw/0005_www_buffalo_edu.json +119 -0
  32. data/raw/0006_www_buffalo_edu.json +137 -0
  33. data/raw/0007_www_buffalo_edu.json +198 -0
  34. data/raw/0008_www_buffalo_edu.json +180 -0
  35. data/raw/0009_www_buffalo_edu.json +120 -0
  36. data/raw/0010_www_buffalo_edu.json +126 -0
  37. data/raw/0011_www_buffalo_edu.json +145 -0
  38. data/raw/0012_www_buffalo_edu.json +95 -0
  39. data/raw/0013_www_buffalo_edu.json +94 -0
  40. data/raw/0014_www_buffalo_edu.json +40 -0
  41. data/raw/0015_www_buffalo_edu.json +119 -0
  42. data/raw/0016_www_buffalo_edu.json +128 -0
  43. data/raw/0017_www_buffalo_edu.json +121 -0
  44. data/raw/0018_www_buffalo_edu.json +206 -0
  45. data/raw/0019_www_buffalo_edu.json +221 -0
  46. data/raw/0020_www_buffalo_edu.json +141 -0
  47. data/raw/0021_www_buffalo_edu.json +130 -0
  48. data/raw/0022_www_buffalo_edu.json +271 -0
  49. data/raw/0023_www_buffalo_edu.json +129 -0
  50. data/raw/0024_www_buffalo_edu.json +108 -0
Dockerfile CHANGED
@@ -1,9 +1,18 @@
1
  FROM python:3.9-slim
2
  WORKDIR /app
 
3
  COPY requirements.txt ./
4
  RUN pip install --no-cache-dir -r requirements.txt
5
  RUN echo "Installed required Python packages."
6
 
7
- COPY frontend/ ./frontend
 
 
 
 
 
 
8
  EXPOSE 7860
9
- CMD ["python", "frontend/flask_app.py"]
 
 
 
1
  FROM python:3.9-slim
2
  WORKDIR /app
3
+
4
  COPY requirements.txt ./
5
  RUN pip install --no-cache-dir -r requirements.txt
6
  RUN echo "Installed required Python packages."
7
 
8
+ COPY buffalo_rag/ /app/buffalo_rag
9
+ COPY main.py /app/main.py
10
+ COPY data/ /app/data
11
+ COPY start.sh /app/start.sh
12
+
13
+ RUN chmod +x /app/start.sh
14
+
15
  EXPOSE 7860
16
+ EXPOSE 8000
17
+
18
+ CMD ["/bin/bash", "/app/start.sh"]
buffalo_rag/api/main.py ADDED
@@ -0,0 +1,161 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import json
3
+ from typing import List, Dict, Any, Optional
4
+ from datetime import datetime
5
+
6
+ from fastapi import FastAPI, HTTPException, BackgroundTasks, Depends, Query
7
+ from fastapi.middleware.cors import CORSMiddleware
8
+ from pydantic import BaseModel
9
+ from fastapi.staticfiles import StaticFiles
10
+ from fastapi.responses import FileResponse
11
+
12
+ from buffalo_rag.scraper.scraper import BuffaloScraper
13
+ from buffalo_rag.embeddings.chunker import DocumentChunker
14
+ from buffalo_rag.vector_store.db import VectorStore
15
+ from buffalo_rag.model.rag import BuffaloRAG
16
+
17
+ # Initialize FastAPI app
18
+ app = FastAPI(
19
+ title="BuffaloRAG API",
20
+ description="API for BuffaloRAG - AI Assistant for International Students at University at Buffalo",
21
+ version="1.0.0"
22
+ )
23
+
24
+ # Add CORS middleware
25
+ app.add_middleware(
26
+ CORSMiddleware,
27
+ allow_origins=["*"],
28
+ allow_credentials=True,
29
+ allow_methods=["*"],
30
+ allow_headers=["*"],
31
+ )
32
+
33
+ # Initialize components
34
+ vector_store = VectorStore()
35
+ rag = BuffaloRAG(vector_store=vector_store)
36
+
37
+ # Pydantic models
38
+ class QueryRequest(BaseModel):
39
+ query: str
40
+ k: int = 5
41
+ categories: Optional[List[str]] = None
42
+
43
+ class QueryResponse(BaseModel):
44
+ query: str
45
+ response: str
46
+ sources: List[Dict[str, Any]]
47
+ timestamp: str
48
+
49
+ class ScrapeRequest(BaseModel):
50
+ seed_url: str = "https://www.buffalo.edu/international-student-services.html"
51
+ max_pages: int = 100
52
+
53
+ class ScrapeResponse(BaseModel):
54
+ status: str
55
+ message: str
56
+
57
+ # Background tasks
58
+ def run_scraper(seed_url: str, max_pages: int):
59
+ """Run the web scraper in the background."""
60
+ scraper = BuffaloScraper(seed_url=seed_url)
61
+ scraper.scrape(max_pages=max_pages)
62
+
63
+ # After scraping, update the embeddings and index
64
+ chunker = DocumentChunker()
65
+ chunks = chunker.create_chunks()
66
+ chunker.create_embeddings(chunks)
67
+
68
+ # Reload the vector store
69
+ global vector_store
70
+ vector_store = VectorStore()
71
+
72
+ # Update the RAG model
73
+ global rag
74
+ rag = BuffaloRAG(vector_store=vector_store)
75
+
76
+ def refresh_index():
77
+ """Refresh the vector index in the background."""
78
+ chunker = DocumentChunker()
79
+ chunks = chunker.create_chunks()
80
+ chunker.create_embeddings(chunks)
81
+
82
+ # Reload the vector store
83
+ global vector_store
84
+ vector_store = VectorStore()
85
+
86
+ # Update the RAG model
87
+ global rag
88
+ rag = BuffaloRAG(vector_store=vector_store)
89
+
90
+ # Setup static files directory
91
+ static_dir = os.path.join(os.path.dirname(__file__), "static")
92
+ os.makedirs(static_dir, exist_ok=True)
93
+
94
+ # Add this after creating the FastAPI app
95
+ app.mount("/static", StaticFiles(directory=static_dir), name="static")
96
+
97
+ # API endpoints
98
+ @app.post("/api/ask", response_model=QueryResponse)
99
+ async def ask(request: QueryRequest):
100
+ """Ask a question to the RAG system."""
101
+ try:
102
+ response = rag.answer(
103
+ query=request.query,
104
+ k=request.k,
105
+ filter_categories=request.categories
106
+ )
107
+
108
+ # Add timestamp
109
+ response['timestamp'] = datetime.now().isoformat()
110
+
111
+ # Log the query for analytics
112
+ with open("data/query_log.jsonl", "a") as f:
113
+ f.write(json.dumps(response) + "\n")
114
+
115
+ return response
116
+ except Exception as e:
117
+ raise HTTPException(status_code=500, detail=str(e))
118
+
119
+ @app.post("/api/scrape", response_model=ScrapeResponse)
120
+ async def scrape(request: ScrapeRequest, background_tasks: BackgroundTasks):
121
+ """Trigger web scraping."""
122
+ try:
123
+ background_tasks.add_task(run_scraper, request.seed_url, request.max_pages)
124
+ return {
125
+ "status": "success",
126
+ "message": f"Started scraping from {request.seed_url} (max {request.max_pages} pages)"
127
+ }
128
+ except Exception as e:
129
+ raise HTTPException(status_code=500, detail=str(e))
130
+
131
+ @app.post("/api/refresh-index", response_model=ScrapeResponse)
132
+ async def refresh(background_tasks: BackgroundTasks):
133
+ """Refresh the vector index."""
134
+ try:
135
+ background_tasks.add_task(refresh_index)
136
+ return {
137
+ "status": "success",
138
+ "message": "Started refreshing the vector index"
139
+ }
140
+ except Exception as e:
141
+ raise HTTPException(status_code=500, detail=str(e))
142
+
143
+ # Add a route to serve the React app
144
+ @app.get("/", include_in_schema=False)
145
+ async def serve_frontend():
146
+ return FileResponse(os.path.join(static_dir, "index.html"))
147
+
148
+ @app.get("/{path:path}", include_in_schema=False)
149
+ async def serve_frontend_paths(path: str):
150
+ # First check if the file exists in static directory
151
+ file_path = os.path.join(static_dir, path)
152
+ if os.path.isfile(file_path):
153
+ return FileResponse(file_path)
154
+
155
+ # Otherwise, return index.html for client-side routing
156
+ return FileResponse(os.path.join(static_dir, "index.html"))
157
+
158
+ # Run the API server
159
+ if __name__ == "__main__":
160
+ import uvicorn
161
+ uvicorn.run("buffalo_rag.api.main:app", host="0.0.0.0", port=8000, reload=True)
buffalo_rag/api/static/asset-manifest.json ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "files": {
3
+ "main.js": "/static/js/main.55953463.js",
4
+ "index.html": "/index.html",
5
+ "main.55953463.js.map": "/static/js/main.55953463.js.map"
6
+ },
7
+ "entrypoints": [
8
+ "static/js/main.55953463.js"
9
+ ]
10
+ }
buffalo_rag/api/static/index.html ADDED
@@ -0,0 +1 @@
 
 
1
+ <!doctype html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>BuffaloRAG - UB International Student Assistant</title><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap"><link rel="icon" href="/favicon.ico"/><script defer="defer" src="/static/js/main.55953463.js"></script></head><body><div id="root"></div></body></html>
buffalo_rag/api/static/static/js/main.55953463.js ADDED
The diff for this file is too large to render. See raw diff
 
buffalo_rag/api/static/static/js/main.55953463.js.LICENSE.txt ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ object-assign
3
+ (c) Sindre Sorhus
4
+ @license MIT
5
+ */
6
+
7
+ /** @license React v0.20.2
8
+ * scheduler.production.min.js
9
+ *
10
+ * Copyright (c) Facebook, Inc. and its affiliates.
11
+ *
12
+ * This source code is licensed under the MIT license found in the
13
+ * LICENSE file in the root directory of this source tree.
14
+ */
15
+
16
+ /** @license React v16.13.1
17
+ * react-is.production.min.js
18
+ *
19
+ * Copyright (c) Facebook, Inc. and its affiliates.
20
+ *
21
+ * This source code is licensed under the MIT license found in the
22
+ * LICENSE file in the root directory of this source tree.
23
+ */
24
+
25
+ /** @license React v17.0.2
26
+ * react-dom.production.min.js
27
+ *
28
+ * Copyright (c) Facebook, Inc. and its affiliates.
29
+ *
30
+ * This source code is licensed under the MIT license found in the
31
+ * LICENSE file in the root directory of this source tree.
32
+ */
33
+
34
+ /** @license React v17.0.2
35
+ * react-is.production.min.js
36
+ *
37
+ * Copyright (c) Facebook, Inc. and its affiliates.
38
+ *
39
+ * This source code is licensed under the MIT license found in the
40
+ * LICENSE file in the root directory of this source tree.
41
+ */
42
+
43
+ /** @license React v17.0.2
44
+ * react-jsx-runtime.production.min.js
45
+ *
46
+ * Copyright (c) Facebook, Inc. and its affiliates.
47
+ *
48
+ * This source code is licensed under the MIT license found in the
49
+ * LICENSE file in the root directory of this source tree.
50
+ */
51
+
52
+ /** @license React v17.0.2
53
+ * react.production.min.js
54
+ *
55
+ * Copyright (c) Facebook, Inc. and its affiliates.
56
+ *
57
+ * This source code is licensed under the MIT license found in the
58
+ * LICENSE file in the root directory of this source tree.
59
+ */
buffalo_rag/api/static/static/js/main.55953463.js.map ADDED
The diff for this file is too large to render. See raw diff
 
buffalo_rag/embeddings/chunker.py ADDED
@@ -0,0 +1,303 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import json
3
+ import re
4
+ from typing import List, Dict, Any, Optional
5
+ import pickle
6
+ from tqdm import tqdm
7
+
8
+ from sentence_transformers import SentenceTransformer
9
+
10
+ class DocumentChunker:
11
+ def __init__(self, input_dir: str = "data/raw",
12
+ output_dir: str = "data/processed",
13
+ embedding_dir: str = "data/embeddings",
14
+ model_name: str = "BAAI/bge-small-en-v1.5"):
15
+ self.input_dir = input_dir
16
+ self.output_dir = output_dir
17
+ self.embedding_dir = embedding_dir
18
+
19
+ # Create output directories
20
+ os.makedirs(output_dir, exist_ok=True)
21
+ os.makedirs(embedding_dir, exist_ok=True)
22
+
23
+ # Load embedding model
24
+ self.model = SentenceTransformer(model_name)
25
+
26
+ def load_documents(self) -> List[Dict[str, Any]]:
27
+ """Load all documents from the input directory."""
28
+ documents = []
29
+
30
+ for filename in os.listdir(self.input_dir):
31
+ if filename.endswith('.json'):
32
+ filepath = os.path.join(self.input_dir, filename)
33
+ with open(filepath, 'r') as f:
34
+ document = json.load(f)
35
+ documents.append(document)
36
+
37
+ return documents
38
+
39
+ def chunk_by_headings(self, document: Dict[str, Any]) -> List[Dict[str, Any]]:
40
+ """Split document into chunks based on headings."""
41
+ chunks = []
42
+
43
+ # If no headings, just create a single chunk
44
+ if not document.get('headings'):
45
+ chunk = {
46
+ 'title': document['title'],
47
+ 'content': document['content'],
48
+ 'url': document['url'],
49
+ 'categories': document.get('categories', []),
50
+ 'scraped_at': document['scraped_at'],
51
+ 'document_type': document.get('document_type', 'webpage')
52
+ }
53
+ chunks.append(chunk)
54
+ return chunks
55
+
56
+ # Process document based on headings
57
+ headings = sorted(document['headings'], key=lambda h: h.get('level', 6))
58
+ content = document['content']
59
+
60
+ # Use headings to split content
61
+ current_title = document['title']
62
+ current_content = ""
63
+ content_lines = content.split('\n')
64
+ line_index = 0
65
+
66
+ for heading in headings:
67
+ heading_text = heading['text']
68
+
69
+ # Find the heading in the content
70
+ heading_found = False
71
+ for i in range(line_index, len(content_lines)):
72
+ if heading_text in content_lines[i]:
73
+ # Save the previous chunk
74
+ if current_content.strip():
75
+ chunk = {
76
+ 'title': current_title,
77
+ 'content': current_content.strip(),
78
+ 'url': document['url'],
79
+ 'categories': document.get('categories', []),
80
+ 'scraped_at': document['scraped_at'],
81
+ 'document_type': document.get('document_type', 'webpage')
82
+ }
83
+ chunks.append(chunk)
84
+
85
+ # Start new chunk
86
+ current_title = heading_text
87
+ current_content = ""
88
+ line_index = i + 1
89
+ heading_found = True
90
+ break
91
+
92
+ if not heading_found:
93
+ current_content += heading_text + "\n"
94
+
95
+ # Add content until the next heading
96
+ if line_index < len(content_lines):
97
+ for i in range(line_index, len(content_lines)):
98
+ # Check if line contains any of the upcoming headings
99
+ if any(h['text'] in content_lines[i] for h in headings if h['text'] != heading_text):
100
+ break
101
+ current_content += content_lines[i] + "\n"
102
+ line_index = i + 1
103
+
104
+ # Add the last chunk
105
+ if current_content.strip():
106
+ chunk = {
107
+ 'title': current_title,
108
+ 'content': current_content.strip(),
109
+ 'url': document['url'],
110
+ 'categories': document.get('categories', []),
111
+ 'scraped_at': document['scraped_at'],
112
+ 'document_type': document.get('document_type', 'webpage')
113
+ }
114
+ chunks.append(chunk)
115
+
116
+ return chunks
117
+
118
+ def chunk_faqs(self, document: Dict[str, Any]) -> List[Dict[str, Any]]:
119
+ """Extract FAQs as individual chunks."""
120
+ chunks = []
121
+
122
+ if not document.get('faqs'):
123
+ return chunks
124
+
125
+ for faq in document['faqs']:
126
+ chunk = {
127
+ 'title': faq['question'],
128
+ 'content': faq['answer'],
129
+ 'url': document['url'],
130
+ 'categories': document.get('categories', []),
131
+ 'scraped_at': document['scraped_at'],
132
+ 'document_type': 'faq',
133
+ 'question': faq['question']
134
+ }
135
+ chunks.append(chunk)
136
+
137
+ return chunks
138
+
139
+ def chunk_semantically(self, document: Dict[str, Any],
140
+ max_chunk_size: int = 1000,
141
+ overlap: int = 100) -> List[Dict[str, Any]]:
142
+ """Split document into fixed-size chunks with overlap."""
143
+ chunks = []
144
+ content = document['content']
145
+
146
+ # Skip empty content
147
+ if not content.strip():
148
+ return chunks
149
+
150
+ # Split content by paragraphs
151
+ paragraphs = re.split(r'\n\s*\n', content)
152
+
153
+ current_chunk = ""
154
+ current_length = 0
155
+
156
+ for para in paragraphs:
157
+ para = para.strip()
158
+ if not para:
159
+ continue
160
+
161
+ para_length = len(para)
162
+
163
+ # If paragraph alone exceeds max size, split by sentences
164
+ if para_length > max_chunk_size:
165
+ sentences = re.split(r'(?<=[.!?])\s+', para)
166
+ for sentence in sentences:
167
+ sentence = sentence.strip()
168
+ sentence_length = len(sentence)
169
+
170
+ if current_length + sentence_length <= max_chunk_size:
171
+ current_chunk += sentence + " "
172
+ current_length += sentence_length + 1
173
+ else:
174
+ # Save current chunk
175
+ if current_chunk:
176
+ chunk = {
177
+ 'title': document['title'],
178
+ 'content': current_chunk.strip(),
179
+ 'url': document['url'],
180
+ 'categories': document.get('categories', []),
181
+ 'scraped_at': document['scraped_at'],
182
+ 'document_type': document.get('document_type', 'webpage')
183
+ }
184
+ chunks.append(chunk)
185
+
186
+ # Start new chunk
187
+ current_chunk = sentence + " "
188
+ current_length = sentence_length + 1
189
+
190
+ # Paragraph fits within limit
191
+ elif current_length + para_length <= max_chunk_size:
192
+ current_chunk += para + "\n\n"
193
+ current_length += para_length + 2
194
+
195
+ # Paragraph doesn't fit, create a new chunk
196
+ else:
197
+ # Save current chunk
198
+ if current_chunk:
199
+ chunk = {
200
+ 'title': document['title'],
201
+ 'content': current_chunk.strip(),
202
+ 'url': document['url'],
203
+ 'categories': document.get('categories', []),
204
+ 'scraped_at': document['scraped_at'],
205
+ 'document_type': document.get('document_type', 'webpage')
206
+ }
207
+ chunks.append(chunk)
208
+
209
+ # Start new chunk
210
+ current_chunk = para + "\n\n"
211
+ current_length = para_length + 2
212
+
213
+ # Add the last chunk
214
+ if current_chunk:
215
+ chunk = {
216
+ 'title': document['title'],
217
+ 'content': current_chunk.strip(),
218
+ 'url': document['url'],
219
+ 'categories': document.get('categories', []),
220
+ 'scraped_at': document['scraped_at'],
221
+ 'document_type': document.get('document_type', 'webpage')
222
+ }
223
+ chunks.append(chunk)
224
+
225
+ return chunks
226
+
227
+ def create_chunks(self) -> List[Dict[str, Any]]:
228
+ """Process all documents and create chunks."""
229
+ all_chunks = []
230
+
231
+ # Load documents
232
+ documents = self.load_documents()
233
+ print(f"Loaded {len(documents)} documents")
234
+
235
+ # Process each document
236
+ for document in tqdm(documents, desc="Chunking documents"):
237
+ # FAQ chunks
238
+ faq_chunks = self.chunk_faqs(document)
239
+ all_chunks.extend(faq_chunks)
240
+
241
+ # Heading-based chunks
242
+ heading_chunks = self.chunk_by_headings(document)
243
+ all_chunks.extend(heading_chunks)
244
+
245
+ # Semantic chunks as fallback
246
+ if not heading_chunks:
247
+ semantic_chunks = self.chunk_semantically(document)
248
+ all_chunks.extend(semantic_chunks)
249
+
250
+ # Save chunks to output directory
251
+ with open(os.path.join(self.output_dir, 'chunks.json'), 'w') as f:
252
+ json.dump(all_chunks, f, indent=2)
253
+
254
+ print(f"Created {len(all_chunks)} chunks")
255
+ return all_chunks
256
+
257
+ def create_embeddings(self, chunks: Optional[List[Dict[str, Any]]] = None) -> Dict[str, Any]:
258
+ """Create embeddings for all chunks."""
259
+ if chunks is None:
260
+ # Load chunks if not provided
261
+ chunks_path = os.path.join(self.output_dir, 'chunks.json')
262
+ if os.path.exists(chunks_path):
263
+ with open(chunks_path, 'r') as f:
264
+ chunks = json.load(f)
265
+ else:
266
+ chunks = self.create_chunks()
267
+
268
+ # Prepare texts for embedding
269
+ texts = []
270
+ for chunk in chunks:
271
+ # For FAQs, combine question and answer
272
+ if chunk.get('document_type') == 'faq':
273
+ text = f"{chunk['title']} {chunk['content']}"
274
+ else:
275
+ # For regular chunks, use title and content
276
+ text = f"{chunk['title']} {chunk['content']}"
277
+ texts.append(text)
278
+
279
+ # Create embeddings
280
+ print("Creating embeddings...")
281
+ embeddings = self.model.encode(texts, show_progress_bar=True)
282
+
283
+ # Create mapping of chunk ID to embedding
284
+ embedding_map = {}
285
+ for i, chunk in enumerate(chunks):
286
+ chunk_id = f"chunk_{i}"
287
+ embedding_map[chunk_id] = {
288
+ 'embedding': embeddings[i],
289
+ 'chunk': chunk
290
+ }
291
+
292
+ # Save embeddings
293
+ with open(os.path.join(self.embedding_dir, 'embeddings.pkl'), 'wb') as f:
294
+ pickle.dump(embedding_map, f)
295
+
296
+ print(f"Created embeddings for {len(chunks)} chunks")
297
+ return embedding_map
298
+
299
+ # Example usage
300
+ if __name__ == "__main__":
301
+ chunker = DocumentChunker()
302
+ chunks = chunker.create_chunks()
303
+ embedding_map = chunker.create_embeddings(chunks)
buffalo_rag/frontend/__pycache__/flask_app.cpython-312.pyc ADDED
Binary file (2.13 kB). View file
 
buffalo_rag/frontend/__pycache__/flask_app.cpython-39.pyc ADDED
Binary file (1.39 kB). View file
 
{frontend β†’ buffalo_rag/frontend}/app.py RENAMED
File without changes
{frontend β†’ buffalo_rag/frontend}/flask_app.py RENAMED
@@ -35,4 +35,4 @@ def refresh_index():
35
  return jsonify(response.json())
36
 
37
  if __name__ == '__main__':
38
- app.run(host="0.0.0.0", port=7860)
 
35
  return jsonify(response.json())
36
 
37
  if __name__ == '__main__':
38
+ app.run(host="0.0.0.0", port=7860)
{frontend β†’ buffalo_rag/frontend}/static/css/styles.css RENAMED
File without changes
{frontend β†’ buffalo_rag/frontend}/static/img/ub.png RENAMED
File without changes
{frontend β†’ buffalo_rag/frontend}/static/js/app.js RENAMED
File without changes
{frontend β†’ buffalo_rag/frontend}/templates/index.html RENAMED
File without changes
buffalo_rag/model/__pycache__/rag.cpython-312.pyc ADDED
Binary file (6.46 kB). View file
 
buffalo_rag/model/__pycache__/rag.cpython-39.pyc ADDED
Binary file (4.83 kB). View file
 
buffalo_rag/model/rag.py ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import json
3
+ from typing import List, Dict, Any, Optional, Tuple
4
+
5
+ import torch
6
+ from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
7
+
8
+ from buffalo_rag.vector_store.db import VectorStore
9
+
10
+ class BuffaloRAG:
11
+ def __init__(self,
12
+ model_name: str = "Qwen/Qwen1.5-1.8B-Chat",
13
+ vector_store: Optional[VectorStore] = None):
14
+ self.vector_store = vector_store or VectorStore()
15
+
16
+ try:
17
+ # Load model and tokenizer
18
+ self.tokenizer = AutoTokenizer.from_pretrained(model_name)
19
+ self.model = AutoModelForCausalLM.from_pretrained(
20
+ model_name,
21
+ torch_dtype=torch.float16,
22
+ device_map="auto",
23
+ trust_remote_code=True,
24
+ low_cpu_mem_usage=True
25
+ )
26
+
27
+ # More conservative generation parameters for stability
28
+ self.pipe = pipeline(
29
+ "text-generation",
30
+ model=self.model,
31
+ tokenizer=self.tokenizer,
32
+ max_new_tokens=256, # Shorter outputs for stability
33
+ do_sample=False, # Use greedy decoding instead of sampling
34
+ pad_token_id=self.tokenizer.eos_token_id
35
+ )
36
+ except Exception as e:
37
+ print(f"Error loading main model: {str(e)}")
38
+ print("Falling back to smaller model...")
39
+ # Fallback to a smaller, more stable model
40
+ self.tokenizer = AutoTokenizer.from_pretrained("distilgpt2")
41
+ self.model = AutoModelForCausalLM.from_pretrained("distilgpt2")
42
+ self.pipe = pipeline(
43
+ "text-generation",
44
+ model=self.model,
45
+ tokenizer=self.tokenizer,
46
+ max_new_tokens=256
47
+ )
48
+
49
+ def retrieve(self,
50
+ query: str,
51
+ k: int = 5,
52
+ filter_categories: Optional[List[str]] = None) -> List[Dict[str, Any]]:
53
+ """Retrieve relevant chunks for a query."""
54
+ return self.vector_store.hybrid_search(query, k=k, filter_categories=filter_categories)
55
+
56
+ def format_context(self, results: List[Dict[str, Any]]) -> str:
57
+ """Format retrieved results into context."""
58
+ context = ""
59
+
60
+ for i, result in enumerate(results):
61
+ chunk = result['chunk']
62
+ context += f"Source {i+1}: {chunk['title']}\n"
63
+ context += f"URL: {chunk['url']}\n"
64
+ context += f"Content: {chunk['content'][:500]}...\n\n"
65
+
66
+ return context
67
+
68
+ def generate_response(self, query: str, context: str) -> str:
69
+ """Generate response using the language model with error handling."""
70
+ prompt = f"""You are a friendly and professional counselor for international students at the University at Buffalo. Respond to the student's query in a supportive, detailed, and well-structured manner.
71
+
72
+ For your responses:
73
+ 1. Address the student respectfully and empathetically
74
+ 2. Provide clear, accurate information with specific details and steps when applicable
75
+ 3. Organize your answer with appropriate headings, bullet points, or numbered lists when helpful
76
+ 4. If the student's question is unclear or lacks essential details, ask 1-2 specific clarifying questions to better understand their situation
77
+ 5. Include relevant deadlines, contacts, or resources when appropriate
78
+ 6. Conclude with a brief encouraging statement
79
+ 7. Only answer related to international students at UB, if it's not related to international students at UB, just say "I'm sorry, I don't have information about that."
80
+ 8. Do not entertain any questions that are not related to students at UB.
81
+
82
+ Question: {query}
83
+
84
+ Relevant Information:
85
+ {context}
86
+
87
+ Answer:"""
88
+
89
+ try:
90
+ # Generate response
91
+ response = self.pipe(prompt)[0]['generated_text']
92
+
93
+ # Extract only the generated part (after the prompt)
94
+ generated = response[len(prompt):].strip()
95
+
96
+ return generated
97
+ except Exception as e:
98
+ print(f"Error during generation: {str(e)}")
99
+ # Fallback response
100
+ return "I'm sorry, I encountered an issue generating a response. Please try asking your question in a different way or contact UB International Student Services directly for assistance."
101
+
102
+ def answer(self,
103
+ query: str,
104
+ k: int = 5,
105
+ filter_categories: Optional[List[str]] = None) -> Dict[str, Any]:
106
+ """End-to-end RAG pipeline."""
107
+ # Retrieve relevant chunks
108
+ results = self.retrieve(query, k=k, filter_categories=filter_categories)
109
+
110
+ # Format context
111
+ context = self.format_context(results)
112
+
113
+ # Generate response
114
+ response = self.generate_response(query, context)
115
+
116
+ # Return response and sources
117
+ return {
118
+ 'query': query,
119
+ 'response': response,
120
+ 'sources': [
121
+ {
122
+ 'title': result['chunk']['title'],
123
+ 'url': result['chunk']['url'],
124
+ 'score': result.get('rerank_score', result['score'])
125
+ }
126
+ for result in results
127
+ ]
128
+ }
129
+
130
+ # Example usage
131
+ if __name__ == "__main__":
132
+ rag = BuffaloRAG(model_name="Qwen/Qwen1.5-1.8B-Chat")
133
+ response = rag.answer("How do I apply for OPT?")
134
+
135
+ print(f"Query: {response['query']}")
136
+ print(f"Response: {response['response']}")
137
+ print("\nSources:")
138
+ for source in response['sources']:
139
+ print(f"- {source['title']} (Score: {source['score']:.4f})")
buffalo_rag/scraper/scraper.py ADDED
@@ -0,0 +1,380 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import json
3
+ import datetime
4
+ from typing import List, Dict, Any, Set
5
+ from urllib.parse import urlparse, urljoin
6
+ import re
7
+ import time
8
+
9
+ from bs4 import BeautifulSoup
10
+ from playwright.sync_api import sync_playwright
11
+ import trafilatura
12
+ import pymupdf
13
+
14
+ class BuffaloScraper:
15
+ def __init__(self, seed_url: str = "https://www.buffalo.edu/international-student-services.html",
16
+ output_dir: str = "data/raw"):
17
+ self.seed_url = seed_url
18
+ self.output_dir = output_dir
19
+ self.visited_urls: Set[str] = set()
20
+ self.queue: List[str] = [seed_url]
21
+ self.domain = urlparse(seed_url).netloc
22
+
23
+ # Create output directory if it doesn't exist
24
+ os.makedirs(output_dir, exist_ok=True)
25
+
26
+ # Keywords to filter useless content
27
+ self.useless_keywords = [
28
+ "privacy policy", "terms of use", "cookie", "last updated",
29
+ "Β©", "copyright", "follow us", "social media",
30
+ "related links", "site map", "skip to content", "all rights reserved"
31
+ ]
32
+
33
+ def is_valid_url(self, url: str) -> bool:
34
+ """Check if URL should be scraped."""
35
+ parsed = urlparse(url)
36
+
37
+ # Only process buffalo.edu URLs
38
+ if not parsed.netloc.endswith('buffalo.edu'):
39
+ return False
40
+
41
+ # Skip certain file types
42
+ if parsed.path.endswith(('.jpg', '.jpeg', '.png', '.gif', '.css', '.js')):
43
+ return False
44
+
45
+ # Skip already visited URLs
46
+ if url in self.visited_urls:
47
+ return False
48
+
49
+ # Skip certain patterns that are likely not content pages
50
+ skip_patterns = [
51
+ '/search', '/login', '/user', '/admin', '/cart', '/account',
52
+ 'javascript:', 'mailto:', 'tel:', '#', 'facebook.com', 'twitter.com',
53
+ 'instagram.com', 'youtube.com', 'linkedin.com'
54
+ ]
55
+ if any(pattern in url.lower() for pattern in skip_patterns):
56
+ return False
57
+
58
+ return True
59
+
60
+ def is_useless_line(self, line: str) -> bool:
61
+ """Check if a line of text is likely useless footer/header content."""
62
+ line = line.lower()
63
+ return any(kw in line for kw in self.useless_keywords)
64
+
65
+ def is_valid_line(self, line: str) -> bool:
66
+ """Check if a line is valid content."""
67
+ if not line or len(line.strip().split()) < 3:
68
+ return False
69
+ if self.is_useless_line(line):
70
+ return False
71
+ return True
72
+
73
+ def is_heading_like(self, line: str) -> bool:
74
+ """Check if a line is likely a heading."""
75
+ line = line.strip()
76
+ word_count = len(line.split())
77
+ return (
78
+ line.isupper() and word_count <= 10 or
79
+ (len(line) < 100 and word_count <= 15 and line.endswith((':', '?')))
80
+ )
81
+
82
+ def extract_clean_content(self, html: str) -> str:
83
+ """Extract clean content with smart filtering."""
84
+ soup = BeautifulSoup(html, "html.parser")
85
+
86
+ # Remove unwanted tags
87
+ for tag in soup(["script", "style", "header", "footer", "nav", "aside"]):
88
+ tag.decompose()
89
+
90
+ # Try trafilatura first as it's often better at extracting main content
91
+ trafilatura_content = trafilatura.extract(html, include_tables=True,
92
+ include_images=False,
93
+ include_links=True,
94
+ output_format='txt')
95
+
96
+ # If trafilatura fails or returns little content, use our own extraction
97
+ if not trafilatura_content or len(trafilatura_content) < 200:
98
+ raw_text = soup.get_text(separator="\n")
99
+ lines = raw_text.split("\n")
100
+ clean_lines = []
101
+
102
+ for line in lines:
103
+ line = line.strip()
104
+ if not self.is_valid_line(line):
105
+ continue
106
+ clean_lines.append(line)
107
+
108
+ # Merge lines smartly
109
+ formatted_text = ""
110
+ buffer = ""
111
+
112
+ for line in clean_lines:
113
+ # Treat as Heading or List Item
114
+ if self.is_heading_like(line) or line.startswith(("-", "*", "β€’")):
115
+ if buffer:
116
+ formatted_text += buffer.strip() + "\n\n"
117
+ buffer = ""
118
+ formatted_text += line.strip() + "\n"
119
+ else:
120
+ buffer += line + " "
121
+
122
+ if buffer:
123
+ formatted_text += buffer.strip() + "\n"
124
+
125
+ return formatted_text.strip()
126
+
127
+ return trafilatura_content
128
+
129
+ def extract_content(self, html: str, url: str) -> Dict[str, Any]:
130
+ """Extract structured content from HTML."""
131
+ soup = BeautifulSoup(html, 'html.parser')
132
+
133
+ # Extract title
134
+ title = soup.title.text.strip() if soup.title else ""
135
+
136
+ # Get cleaned content
137
+ content = self.extract_clean_content(html)
138
+
139
+ # Extract headings
140
+ headings = []
141
+ for h in soup.find_all(['h1', 'h2', 'h3', 'h4', 'h5', 'h6']):
142
+ headings.append({
143
+ 'level': int(h.name[1]),
144
+ 'text': h.get_text(strip=True)
145
+ })
146
+
147
+ # Extract FAQs (common patterns in UB sites)
148
+ faqs = []
149
+ # Look for accordion elements, common FAQ containers
150
+ faq_containers = soup.select('.accordion, .faq, .collapse, .panel-group, .question-answer, details')
151
+ for container in faq_containers:
152
+ # Look for question/answer pairs in various formats
153
+ question_selectors = ['.accordion-header', '.faq-question', '.card-header',
154
+ 'summary', '.question', 'dt', 'h3', 'h4', '.panel-title']
155
+ answer_selectors = ['.accordion-body', '.faq-answer', '.card-body',
156
+ '.answer', 'dd', '.panel-body', 'p']
157
+
158
+ # Try to select using CSS selectors
159
+ questions = container.select(', '.join(question_selectors))
160
+ answers = container.select(', '.join(answer_selectors))
161
+
162
+ # Match questions with answers
163
+ for i, q in enumerate(questions):
164
+ if i < len(answers):
165
+ faqs.append({
166
+ 'question': q.get_text(strip=True),
167
+ 'answer': answers[i].get_text(strip=True)
168
+ })
169
+
170
+ # Also try to detect Q&A patterns in paragraphs
171
+ p_texts = [p.get_text(strip=True) for p in soup.find_all('p')]
172
+ for i, text in enumerate(p_texts):
173
+ if i < len(p_texts) - 1 and text.strip().endswith('?'):
174
+ faqs.append({
175
+ 'question': text,
176
+ 'answer': p_texts[i+1]
177
+ })
178
+
179
+ # Extract important links
180
+ important_links = []
181
+ for a in soup.find_all('a', href=True):
182
+ link_text = a.get_text(strip=True)
183
+ href = a['href']
184
+ if link_text and any(keyword in link_text.lower() for keyword in
185
+ ['form', 'document', 'application', 'guide', 'i-20', 'opt', 'cpt']):
186
+ important_links.append({
187
+ 'text': link_text,
188
+ 'url': href
189
+ })
190
+
191
+ # Metadata extraction from URL
192
+ parsed = urlparse(url)
193
+ path_parts = [p for p in parsed.path.strip("/").split("/") if p]
194
+
195
+ # Try to categorize the content
196
+ categories = []
197
+ if re.search(r'\b(visa|i-20|i20|sevis|immigration)\b', content, re.I):
198
+ categories.append('immigration')
199
+ if re.search(r'\b(opt|cpt|employment|work|job|internship)\b', content, re.I):
200
+ categories.append('employment')
201
+ if re.search(r'\b(tuition|fee|payment|cost|financial)\b', content, re.I):
202
+ categories.append('fees')
203
+ if re.search(r'\b(housing|accommodation|apartment|dorm|living)\b', content, re.I):
204
+ categories.append('housing')
205
+
206
+ # Build structured document
207
+ document = {
208
+ 'url': url,
209
+ 'title': title,
210
+ 'content': content,
211
+ 'headings': headings,
212
+ 'faqs': faqs,
213
+ 'important_links': important_links,
214
+ 'categories': categories,
215
+ 'scraped_at': datetime.datetime.now().isoformat(),
216
+ 'path_hierarchy': path_parts,
217
+ 'domain': parsed.netloc
218
+ }
219
+
220
+ return document
221
+
222
+ def extract_links(self, html: str, base_url: str) -> List[str]:
223
+ """Extract all links from the page."""
224
+ soup = BeautifulSoup(html, 'html.parser')
225
+ links = []
226
+
227
+ for a in soup.find_all('a', href=True):
228
+ href = a['href']
229
+ # Handle relative URLs
230
+ full_url = urljoin(base_url, href)
231
+ # Normalize URL
232
+ full_url = full_url.split('#')[0] # Remove fragment
233
+ full_url = full_url.rstrip('/') # Remove trailing slash
234
+
235
+ if self.is_valid_url(full_url):
236
+ links.append(full_url)
237
+
238
+ return links
239
+
240
+ def process_pdf(self, url: str) -> Dict[str, Any]:
241
+ """Download and extract text from PDF."""
242
+ with sync_playwright() as p:
243
+ browser = p.chromium.launch()
244
+ page = browser.new_page()
245
+
246
+ try:
247
+ page.goto(url, timeout=60000) # 60 second timeout
248
+
249
+ # Get the PDF as bytes
250
+ pdf_data = page.pdf(path=None)
251
+ browser.close()
252
+ except Exception as e:
253
+ browser.close()
254
+ print(f"Error downloading PDF {url}: {str(e)}")
255
+ return None
256
+
257
+ # Create a temporary file to use with PyMuPDF
258
+ temp_path = os.path.join(self.output_dir, "temp.pdf")
259
+ with open(temp_path, "wb") as f:
260
+ f.write(pdf_data)
261
+
262
+ # Extract text from PDF
263
+ doc = pymupdf.open(temp_path)
264
+ text = ""
265
+ for page_num in range(doc.page_count):
266
+ page = doc[page_num]
267
+ text += page.get_text()
268
+ doc.close()
269
+
270
+ # Remove temporary file
271
+ os.remove(temp_path)
272
+
273
+ # Extract metadata from URL
274
+ parsed = urlparse(url)
275
+ path_parts = [p for p in parsed.path.strip("/").split("/") if p]
276
+ filename = os.path.basename(url)
277
+
278
+ # Categorize PDF content
279
+ categories = []
280
+ if re.search(r'\b(visa|i-20|i20|sevis|immigration)\b', text, re.I):
281
+ categories.append('immigration')
282
+ if re.search(r'\b(opt|cpt|employment|work|job|internship)\b', text, re.I):
283
+ categories.append('employment')
284
+ if re.search(r'\b(tuition|fee|payment|cost|financial)\b', text, re.I):
285
+ categories.append('fees')
286
+ if re.search(r'\b(housing|accommodation|apartment|dorm|living)\b', text, re.I):
287
+ categories.append('housing')
288
+
289
+ # Build structured document
290
+ document = {
291
+ 'url': url,
292
+ 'title': filename or os.path.basename(url),
293
+ 'content': text,
294
+ 'document_type': 'pdf',
295
+ 'categories': categories,
296
+ 'scraped_at': datetime.datetime.now().isoformat(),
297
+ 'path_hierarchy': path_parts,
298
+ 'domain': parsed.netloc
299
+ }
300
+
301
+ return document
302
+
303
+ def scrape(self, max_pages: int = 100, max_depth: int = 4) -> None:
304
+ """Main scraping function."""
305
+ pages_scraped = 0
306
+ depth_map = {self.seed_url: 0} # Track depth of each URL
307
+
308
+ with sync_playwright() as p:
309
+ browser = p.chromium.launch()
310
+ page = browser.new_page()
311
+
312
+ while self.queue and pages_scraped < max_pages:
313
+ url = self.queue.pop(0)
314
+ current_depth = depth_map.get(url, 0)
315
+
316
+ if current_depth > max_depth:
317
+ continue
318
+
319
+ if url in self.visited_urls:
320
+ continue
321
+
322
+ try:
323
+ print(f"Scraping: {url} (depth: {current_depth})")
324
+ self.visited_urls.add(url)
325
+
326
+ # Handle PDFs separately
327
+ if url.lower().endswith('.pdf'):
328
+ document = self.process_pdf(url)
329
+ if document:
330
+ # Save the document
331
+ filename = f"{pages_scraped:04d}_{urlparse(url).netloc.replace('.', '_')}.json"
332
+ filepath = os.path.join(self.output_dir, filename)
333
+ with open(filepath, 'w') as f:
334
+ json.dump(document, f, indent=2)
335
+
336
+ pages_scraped += 1
337
+ else:
338
+ # Regular webpage
339
+ try:
340
+ page.goto(url, timeout=30000) # 30 second timeout
341
+ page.wait_for_load_state('networkidle', timeout=10000) # Wait for page to load
342
+ html = page.content()
343
+
344
+ # Extract content
345
+ document = self.extract_content(html, url)
346
+
347
+ # Save the document
348
+ filename = f"{pages_scraped:04d}_{urlparse(url).netloc.replace('.', '_')}.json"
349
+ filepath = os.path.join(self.output_dir, filename)
350
+ with open(filepath, 'w') as f:
351
+ json.dump(document, f, indent=2)
352
+
353
+ pages_scraped += 1
354
+
355
+ # Extract links for further scraping if we haven't reached max depth
356
+ if current_depth < max_depth:
357
+ links = self.extract_links(html, url)
358
+ for link in links:
359
+ if link not in self.visited_urls and link not in self.queue:
360
+ self.queue.append(link)
361
+ depth_map[link] = current_depth + 1
362
+ except Exception as e:
363
+ print(f"Error processing page {url}: {str(e)}")
364
+ continue
365
+
366
+ except Exception as e:
367
+ print(f"Error scraping {url}: {str(e)}")
368
+
369
+ # Add a small delay to be nice to the server
370
+ time.sleep(1)
371
+
372
+ browser.close()
373
+
374
+ print(f"Scraping completed. Scraped {pages_scraped} pages.")
375
+
376
+ # Example usage
377
+ if __name__ == "__main__":
378
+ scraper = BuffaloScraper()
379
+ scraper.scrape(max_pages=100, max_depth=4)
380
+
buffalo_rag/vector_store/__pycache__/db.cpython-312.pyc ADDED
Binary file (10.1 kB). View file
 
buffalo_rag/vector_store/__pycache__/db.cpython-39.pyc ADDED
Binary file (6.37 kB). View file
 
buffalo_rag/vector_store/db.py ADDED
@@ -0,0 +1,213 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import pickle
3
+ import json
4
+ import numpy as np
5
+ from typing import List, Dict, Any, Optional, Tuple
6
+ import faiss
7
+ from tqdm import tqdm
8
+ from sentence_transformers import SentenceTransformer, CrossEncoder
9
+
10
+ class VectorStore:
11
+ def __init__(self,
12
+ embedding_dir: str = "data/embeddings",
13
+ model_name: str = "BAAI/bge-small-en-v1.5",
14
+ reranker_name: str = "cross-encoder/ms-marco-MiniLM-L-6-v2"):
15
+ self.embedding_dir = embedding_dir
16
+ self.index = None
17
+ self.chunk_ids = []
18
+ self.chunks = {}
19
+
20
+ # Load embedding model
21
+ self.model = SentenceTransformer(model_name)
22
+
23
+ # Load reranker model
24
+ self.reranker = CrossEncoder(reranker_name)
25
+
26
+ # Load or create index
27
+ self.load_or_create_index()
28
+
29
+ def load_or_create_index(self) -> None:
30
+ """Load existing index or create a new one."""
31
+ index_path = os.path.join(self.embedding_dir, 'faiss_index.pkl')
32
+
33
+ if os.path.exists(index_path):
34
+ # Load existing index
35
+ with open(index_path, 'rb') as f:
36
+ data = pickle.load(f)
37
+ self.index = data['index']
38
+ self.chunk_ids = data['chunk_ids']
39
+ self.chunks = data['chunks']
40
+ print(f"Loaded existing index with {len(self.chunk_ids)} chunks")
41
+ else:
42
+ # Create new index
43
+ embeddings_path = os.path.join(self.embedding_dir, 'embeddings.pkl')
44
+ if os.path.exists(embeddings_path):
45
+ self.create_index()
46
+ else:
47
+ print("No embeddings found. Please run the chunker first.")
48
+
49
+ def create_index(self) -> None:
50
+ """Create FAISS index from embeddings."""
51
+ embeddings_path = os.path.join(self.embedding_dir, 'embeddings.pkl')
52
+
53
+ with open(embeddings_path, 'rb') as f:
54
+ embedding_map = pickle.load(f)
55
+
56
+ # Extract embeddings and chunk IDs
57
+ chunk_ids = list(embedding_map.keys())
58
+ embeddings = np.array([embedding_map[chunk_id]['embedding'] for chunk_id in chunk_ids])
59
+ chunks = {chunk_id: embedding_map[chunk_id]['chunk'] for chunk_id in chunk_ids}
60
+
61
+ # Create FAISS index
62
+ dimension = embeddings.shape[1]
63
+ index = faiss.IndexFlatL2(dimension)
64
+ index.add(embeddings.astype(np.float32))
65
+
66
+ # Save index and metadata
67
+ self.index = index
68
+ self.chunk_ids = chunk_ids
69
+ self.chunks = chunks
70
+
71
+ # Save to disk
72
+ with open(os.path.join(self.embedding_dir, 'faiss_index.pkl'), 'wb') as f:
73
+ pickle.dump({
74
+ 'index': index,
75
+ 'chunk_ids': chunk_ids,
76
+ 'chunks': chunks
77
+ }, f)
78
+
79
+ print(f"Created index with {len(chunk_ids)} chunks")
80
+
81
+ def search(self,
82
+ query: str,
83
+ k: int = 5,
84
+ filter_categories: Optional[List[str]] = None,
85
+ rerank: bool = True) -> List[Dict[str, Any]]:
86
+ """Search for relevant chunks."""
87
+ if self.index is None:
88
+ print("No index available. Please create an index first.")
89
+ return []
90
+
91
+ # Create query embedding
92
+ query_embedding = self.model.encode([query])[0]
93
+
94
+ # Search index
95
+ D, I = self.index.search(np.array([query_embedding]).astype(np.float32), min(k * 2, len(self.chunk_ids)))
96
+
97
+ # Get results
98
+ results = []
99
+ for i, idx in enumerate(I[0]):
100
+ chunk_id = self.chunk_ids[idx]
101
+ chunk = self.chunks[chunk_id]
102
+
103
+ # Apply category filter if specified
104
+ if filter_categories and not any(cat in chunk.get('categories', []) for cat in filter_categories):
105
+ continue
106
+
107
+ result = {
108
+ 'chunk_id': chunk_id,
109
+ 'score': float(D[0][i]),
110
+ 'chunk': chunk
111
+ }
112
+ results.append(result)
113
+
114
+ # Rerank results if requested
115
+ if rerank and results:
116
+ # Prepare pairs for reranking
117
+ pairs = [(query, result['chunk']['content']) for result in results]
118
+
119
+ # Get reranking scores
120
+ rerank_scores = self.reranker.predict(pairs)
121
+
122
+ # Update scores and sort
123
+ for i, score in enumerate(rerank_scores):
124
+ results[i]['rerank_score'] = float(score)
125
+
126
+ # Sort by rerank score
127
+ results = sorted(results, key=lambda x: x['rerank_score'], reverse=True)
128
+
129
+ # Limit to k results
130
+ results = results[:k]
131
+
132
+ return results
133
+
134
+ def hybrid_search(self,
135
+ query: str,
136
+ k: int = 5,
137
+ filter_categories: Optional[List[str]] = None) -> List[Dict[str, Any]]:
138
+ """Combine dense vector search with BM25-style keyword matching."""
139
+ # Get vector search results
140
+ vector_results = self.search(query, k=k, filter_categories=filter_categories, rerank=False)
141
+
142
+ # Simple keyword matching (simulating BM25)
143
+ keywords = query.lower().split()
144
+
145
+ # Score all chunks by keyword presence
146
+ keyword_scores = {}
147
+ for chunk_id, chunk_data in self.chunks.items():
148
+ chunk = chunk_data
149
+ content = (chunk['title'] + " " + chunk['content']).lower()
150
+
151
+ # Count keyword matches
152
+ score = sum(content.count(keyword) for keyword in keywords)
153
+
154
+ # Apply category filter if specified
155
+ if filter_categories and not any(cat in chunk.get('categories', []) for cat in filter_categories):
156
+ continue
157
+
158
+ keyword_scores[chunk_id] = score
159
+
160
+ # Get top keyword matches
161
+ keyword_results = sorted(
162
+ [{'chunk_id': chunk_id, 'score': score, 'chunk': self.chunks[chunk_id]}
163
+ for chunk_id, score in keyword_scores.items() if score > 0],
164
+ key=lambda x: x['score'],
165
+ reverse=True
166
+ )[:k]
167
+
168
+ # Combine results (remove duplicates)
169
+ seen_ids = set()
170
+ combined_results = []
171
+
172
+ # Add vector results first
173
+ for result in vector_results:
174
+ combined_results.append(result)
175
+ seen_ids.add(result['chunk_id'])
176
+
177
+ # Add keyword results if not already added
178
+ for result in keyword_results:
179
+ if result['chunk_id'] not in seen_ids:
180
+ combined_results.append(result)
181
+ seen_ids.add(result['chunk_id'])
182
+
183
+ # Limit to k results
184
+ combined_results = combined_results[:k]
185
+
186
+ # Rerank final results
187
+ if combined_results:
188
+ # Prepare pairs for reranking
189
+ pairs = [(query, result['chunk']['content']) for result in combined_results]
190
+
191
+ # Get reranking scores
192
+ rerank_scores = self.reranker.predict(pairs)
193
+
194
+ # Update scores and sort
195
+ for i, score in enumerate(rerank_scores):
196
+ combined_results[i]['rerank_score'] = float(score)
197
+
198
+ # Sort by rerank score
199
+ combined_results = sorted(combined_results, key=lambda x: x['rerank_score'], reverse=True)
200
+
201
+ return combined_results
202
+
203
+ # Example usage
204
+ if __name__ == "__main__":
205
+ vector_store = VectorStore()
206
+ results = vector_store.hybrid_search("How do I apply for OPT?")
207
+
208
+ print(f"Found {len(results)} results")
209
+ for i, result in enumerate(results[:3]):
210
+ print(f"Result {i+1}: {result['chunk']['title']}")
211
+ print(f"Score: {result.get('rerank_score', result['score'])}")
212
+ print(f"Content: {result['chunk']['content'][:100]}...")
213
+ print()
data/processed/chunks.json ADDED
The diff for this file is too large to render. See raw diff
 
data/query_log.jsonl ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {"query": "hey", "response": "Hello! How can I assist you today?", "sources": [{"title": "E", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -7.515041351318359}, {"title": "New Students", "url": "https://www.buffalo.edu/international-student-services/workshops-trips-events.html", "score": -8.835952758789062}, {"title": "New Students", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -8.835952758789062}, {"title": "Activities", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -8.88674259185791}, {"title": "Site Map", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -10.0355224609375}], "timestamp": "2025-04-25T02:44:00.868275"}
2
+ {"query": "hey give me details", "response": "Hello! Here are some detailed information about the International Student Services (ISS) at the University at Buffalo:\n\n1. Activities:\nThe ISS offers various activities and events to help new international students settle into their academic and social lives on campus. Some of these include:\n\na. Welcome Orientation: This event is held in the fall semester and provides an overview of the university's policies, procedures, and resources for international students. It includes information on housing, immigration, cultural differences, and academic support services.\nb. Cultural Events: The ISS hosts several cultural events throughout the year, such as food festivals, language exchange programs, and cultural workshops. These events provide opportunities for international students to learn about American culture, traditions, and customs.\nc. Social Activities: The ISS organizes social events like club meetings, study groups, and sports teams to foster a sense of community among international students. These events offer a chance to meet other students from different countries and make friends.\nd. Academic Support: The ISS provides academic support services to help international students navigate the challenges of studying in the United States. These services include tutoring, writing assistance, and access to academic resources such as databases and online libraries.\ne. Career Development: The ISS offers career development workshops and resources to help international students explore potential", "sources": [{"title": "Activities", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -9.338510513305664}, {"title": "New Students", "url": "https://www.buffalo.edu/international-student-services/workshops-trips-events.html", "score": -9.429910659790039}, {"title": "New Students", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -9.429910659790039}, {"title": "E", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -9.850290298461914}, {"title": "Monday", "url": "https://www.buffalo.edu/international-student-services/about-us/contact-us.html", "score": -11.325536727905273}], "timestamp": "2025-04-25T02:47:32.093997"}
3
+ {"query": "please give me more details about what i need to get for visa interview", "response": "To prepare for a visa interview at a U.S. Consulate, you will need to gather the following documents:\n\n1. Original documents:\n\t* Passport: Make sure it is valid for at least six months beyond your intended stay in the United States. You will need both an original and a photocopy of your passport.\n\t* I-94 card (if applicable): This is a digital copy of your current entry stamp in your passport. It serves as proof of your status in the United States and allows you to apply for a visa.\n\t* Original I-20 form (F-1 or J-1): This is a document issued by your educational institution indicating your acceptance into a degree program or research fellowship. It includes your student's name, date of admission, course schedule, tuition fees, and other relevant information.\n\t* Proof of financial support: If you are a F-1 student, you will need to provide proof of sufficient funds to cover your living expenses during your stay in the United States. This could include bank statements, pay stubs, or a letter from your employer stating your expected salary and benefits.\n\t* Proof of English proficiency: If your field of study requires a certain level of English proficiency, you will need to provide evidence", "sources": [{"title": "U.S. Visa", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html", "score": 2.1697254180908203}, {"title": "Travel - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel.html", "score": -2.3090591430664062}, {"title": "Your I-20 & Next Steps - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/for-new-students/your-i-20---next-steps.html", "score": -2.3359806537628174}, {"title": "Visa Information - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/for-new-students/immigration-and-visas.html", "score": -3.3146982192993164}, {"title": "2. Immigration Documents (Original Documents + One Set of Photocopies)", "url": "https://www.buffalo.edu/international-student-services/social-security-card---income-tax-filing/social-security-card.html", "score": -8.720430374145508}], "timestamp": "2025-04-25T02:52:04.124952"}
4
+ {"query": "Hey what document do I need for visa internview?", "response": "The relevant document for visa internship at the University at Buffalo is an F-1 or J-1 visa. This type of visa allows international students to work in the United States on a temporary basis under the auspices of a university or educational institution. To obtain an F-1 visa, you will need to provide certain documentation, including:\n\n1. Original passport: A valid passport that has been issued within the past six years.\n2. Valid I-94 card (if issued): An electronic copy of your current I-94 card, which shows your status as an F-1 student.\n3. Proof of financial support: A letter from your university or educational institution indicating that you have sufficient funds to cover your tuition, living expenses, and any other necessary costs for the duration of your internship.\n4. Proof of English proficiency: A TOEFL score of at least 80 or aIELTS score of 6.0 (with no writing component).\n5. Academic transcripts: A copy of your academic transcript showing your enrollment status and the courses you completed during your time in the United States.\n6. Proof of work authorization: A letter from your employer confirming that they have authorized you to work in the United States during your internship.\n7. Medical certificate", "sources": [{"title": "Travel - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel.html", "score": -3.452972888946533}, {"title": "Immigration & Visa", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -3.5396194458007812}, {"title": "Visa Information - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/for-new-students/immigration-and-visas.html", "score": -3.560807228088379}, {"title": "U.S. Visa", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html", "score": -3.8072965145111084}, {"title": "2. Immigration Documents (Original Documents + One Set of Photocopies)", "url": "https://www.buffalo.edu/international-student-services/social-security-card---income-tax-filing/social-security-card.html", "score": -9.123757362365723}], "timestamp": "2025-04-25T03:13:39.929645"}
5
+ {"query": "Aslo, i'm a graduate student, and I have C in one subject will I fail in subject? or will my status be taken from me? give me some suggesting if i'm in safe zone, I'm an internatinal student", "response": "In general, if you are a graduate student with a C in one subject and are currently in F-1 status, you should expect to pass your subject exam and maintain your status throughout your studies. However, there are certain circumstances where you may face challenges in passing the subject exam:\n\n1. Changing degree level: If you have changed your degree level at UB or transferred from another U.S. college/university, you may need to complete additional coursework or take additional exams to demonstrate proficiency in the new subject. This could impact your ability to receive CPT authorization.\n2. Graduation requirements: If you are completing your final semester of studies and are planning to graduate within the next academic year, you may need to pass your subject exam before you can officially graduate. Failure to pass the exam could result in a delay in graduation or a reduction in your degree status.\n3. Course requirements: Some departments may require specific courses or projects to fulfill their internship, practicum, Co-op, or course requirements. If your department does not offer an internship, practicum, Co-op, or course meeting these requirements, you may not be eligible for CPT. This could limit your opportunities for practical training experiences and potentially impact your ability to receive CPT authorization.\n4. Academic integrity concerns", "sources": [{"title": "Eligibility Requirements", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html", "score": -5.543703556060791}, {"title": "F-1 Student - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student.html", "score": -8.566695213317871}, {"title": "Important Considerations:", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/estimated-expenses.html", "score": -8.704761505126953}, {"title": "Important Reminders", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html", "score": -8.846111297607422}, {"title": "Enrollment Requirements", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html", "score": -9.886970520019531}], "timestamp": "2025-04-25T03:15:30.018764"}
6
+ {"query": "How do I apply for OPT?", "response": "To apply for Optional Practical Training (OPT) at the University at Buffalo (UB), follow these steps:\n\n1. Review the requirements: Before starting the process, make sure you understand the eligibility criteria for OPT, including the length of time allowed for the program, the type of training, and the number of hours worked per week. The maximum duration of OPT varies depending on the individual's country of origin, but it typically ranges from 12 to 16 months.\n\n2. Obtain necessary documentation: You will need to provide several documents to support your request for OPT, including:\n\n a. F-1 student visa: A valid visa, Form I-901, must be present when applying for OPT.\n \n b. Proof of employment: An employer letter stating that you have been hired for an occupation related to your field of study or research, along with a copy of your job offer letter.\n \n c. Proof of income: A pay stub or bank statement showing your current income, which supports your ability to meet the training costs.\n \n d. Proof of English proficiency: A TOEFL score (minimum 80 for non-native speakers) or IELTS score (minimum 7.0 for native speakers) can demonstrate your English", "sources": [{"title": "Travel - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel.html", "score": -0.36291322112083435}, {"title": "Students, Faculty and Staff", "url": "https://ubisss.buffalo.edu", "score": -2.3324174880981445}, {"title": "Immigration & Visa", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -4.302582740783691}, {"title": "OPT STEM Extension", "url": "https://www.buffalo.edu/international-student-services/workshops-trips-events/workshops.html", "score": -5.674208164215088}, {"title": "U.S. Visa", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html", "score": -7.419798851013184}], "timestamp": "2025-04-25T03:38:42.829977"}
7
+ {"query": "hey, help mw out with my grades, i have a grade C in one subject, will i get fal or deported, what is the requirement for international students", "response": "Hello there! I'm happy to assist you with your grades and concerns regarding your F-1 visa status. Let's start by addressing your question:\n\nQ: Will I receive a failing grade or be deported if I have a grade C in one subject?\n\nA: The eligibility requirements for F-1 student visa holders vary depending on the country of origin and the specific program or course you are participating in at UB. However, generally speaking, a grade C in one subject does not necessarily mean that you will receive a failing grade or be deported.\n\nF-1 students are typically allowed to participate in certain programs or courses that require a certain level of proficiency in English, such as those offered by the University at Buffalo's School of Education or the College of Arts & Sciences. These courses often include language classes, cultural exchange programs, or research opportunities that require a certain level of understanding of the language and culture.\n\nIf you have a grade C in one subject, it could indicate that you have demonstrated some difficulty in understanding or communicating effectively in English, which may limit your ability to fully engage in the course material and complete assignments. This could potentially impact your overall performance and potential for academic success.\n\nHowever, it's important to note that the F-1 visa process is complex, and the", "sources": [{"title": "Eligibility Requirements", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html", "score": -9.177477836608887}, {"title": "A Message of Support - April 2025 - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel/travel-alerts/a-message-of-support-for-international-students---april-2025.html", "score": -9.72881031036377}, {"title": "F-1 Student - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student.html", "score": -9.94715404510498}, {"title": "Important Reminders", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html", "score": -10.463960647583008}, {"title": "Annual Report - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/about-us/annualreport.html", "score": -10.93886947631836}], "timestamp": "2025-04-25T03:50:11.064181"}
8
+ {"query": "fuck you help me", "response": "Hello there! I'm here to assist you with any concerns or questions you may have regarding international students at the University at Buffalo (UB). Let's start by addressing your request for help with \"fuck you.\"\n\nFirstly, let's clarify what you're referring to. It seems like you might be experiencing frustration or anger towards someone who has provided assistance or support to you as an international student at UB. However, without more context or information, it's difficult to provide a specific answer.\n\nIf you could please provide more details about the situation, such as:\n\n1. Who is the person you're referring to?\n2. What specifically happened that led to your feelings of frustration or anger?\n3. Have you tried seeking help from other sources, such as counseling services, academic advisors, or campus resources? If so, how did they respond?\n4. Are there any specific incidents or events that stand out in your memory that contributed to your negative emotions?\n\nOnce we have a better understanding of your situation, we can explore potential solutions and strategies to address your feelings of frustration or anger. Here are some steps you can take:\n\n1. Take a break: Sometimes, taking a step back from the situation can help you process your emotions and gain perspective. Try engaging in activities that relax", "sources": [{"title": "E", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -8.984875679016113}, {"title": "J", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -9.218276977539062}, {"title": "Login Required", "url": "https://www.buffalo.edu/content/www/international-student-services/admin-pw.html", "score": -9.834419250488281}, {"title": "Site Map", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -10.994070053100586}, {"title": "Monday", "url": "https://www.buffalo.edu/international-student-services/about-us/contact-us.html", "score": -11.279172897338867}], "timestamp": "2025-04-25T03:57:46.344246"}
9
+ {"query": "find 4-2*8 value", "response": "To find the 4-2*8 value, we need to multiply the number of factors (4) by the product of the two numbers (2*8). Let's break down the calculation step-by-step:\n\n1. Multiply the number of factors (4):\n - Factors = 4\n - Value = 4 * 8 = 32\n\n2. Multiply the product of the two numbers (2*8):\n - Product = 2 * 8 = 16\n\nNow, let's calculate the value:\nValue = Factors * Product\nValue = 4 * 16\nValue = 64\n\nSo, the 4-2*8 value is 64. \n\nIf you need more information or clarification regarding this calculation, please provide the sources you mentioned or clarify the specific requirements for finding the value. If you're unsure about accessing the specific e-form or picking up documents, you can contact the International Student Services (ISS) advisor through their website or phone number provided in the sources. They offer drop-in appointments for immigration-related inquiries and can assist with document pick-ups. The shortest path of travel from an accessible parking space to a barrier-free entrance is approximately 299 feet, and the options for", "sources": [{"title": "E", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -10.142992973327637}, {"title": "Login Required", "url": "https://www.buffalo.edu/content/www/international-student-services/admin-pw.html", "score": -11.353201866149902}, {"title": "Monday", "url": "https://www.buffalo.edu/international-student-services/about-us/contact-us.html", "score": -11.437908172607422}, {"title": "Tuesday", "url": "https://www.buffalo.edu/international-student-services/about-us/contact-us.html", "score": -11.488155364990234}, {"title": "Navigate Drop-ins", "url": "https://www.buffalo.edu/international-student-services/about-us/contact-us.html", "score": -11.497251510620117}], "timestamp": "2025-04-25T03:59:58.703305"}
10
+ {"query": "How do I apply for OPT?", "response": "To apply for Optional Practical Training (OPT) at the University at Buffalo (UB), follow these steps:\n\n1. Familiarize yourself with the requirements:\n - Visit the Department of International Studies (DIS) website (<https://www.buffalo.edu/international-student-services/dis/index.html>) to find the current list of departments offering OPT courses.\n - Review the course descriptions and prerequisites to ensure they align with your program of study and meet the minimum academic requirements for OPT.\n - Familiarize yourself with the F-1 and J-1 categories of visas, which differ in terms of eligibility, duration, and job opportunities.\n - Understand the difference between F-1 and J-1 students, including the differences in employment authorization, work hours, and job responsibilities.\n\n2. Obtain necessary documentation:\n - As per Source 1, you need to bring the following documents to the International Student Services (ISS) office:\n * F-1 visa application form (DS-160)\n * Proof of enrollment in an eligible degree program (e.g., transcript, official class list, or certificate of completion)\n * A completed F-1 Form 1A (Student Affidavit of Eligibility)\n * A copy of", "sources": [{"title": "Travel - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel.html", "score": -0.36291491985321045}, {"title": "Students, Faculty and Staff", "url": "https://ubisss.buffalo.edu", "score": -2.3324153423309326}, {"title": "Immigration & Visa", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -4.302586555480957}, {"title": "OPT STEM Extension", "url": "https://www.buffalo.edu/international-student-services/workshops-trips-events/workshops.html", "score": -5.6742072105407715}, {"title": "U.S. Visa", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html", "score": -7.4197916984558105}], "timestamp": "2025-04-28T03:35:35.354370"}
11
+ {"query": "What documents do I need for my I-20?", "response": "To obtain the necessary documents for your I-20, please follow these steps:\n\n1. **Financial Documentation**:\n - Bank Statements/Letters: You will need to provide proof of your income, such as bank statements, letters from your employer, or a certified check. These documents should show your monthly income, including any bonuses, commissions, or other sources of income. Make sure to include the following items:\n - A recent bank statement showing your salary or wages for the past three months.\n - A letter from your employer confirming your employment status and stating your expected salary or wage amount.\n - A copy of your tax return, if applicable, showing your income and deductions.\n - A copy of your W-2 form, if applicable, showing your employer's withholding taxes.\n\n2. **Certificate of Deposit (CD) Statements**:\n - CD Statements: If you have a CD with a maturity date within the next six months, you will need to provide a certificate of deposit (CD) statement to prove your ownership of the funds. This document should show the balance on your CD and the interest earned during the specified period. The following items are typically required:\n - A recent CD statement showing the current balance on your CD.\n - A", "sources": [{"title": "Financial Documentation - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/financial-documentation.html", "score": 5.1504974365234375}, {"title": "Your I-20 & Next Steps - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/for-new-students/your-i-20---next-steps.html", "score": 3.5453882217407227}, {"title": "2. Immigration Documents (Original Documents + One Set of Photocopies)", "url": "https://www.buffalo.edu/international-student-services/social-security-card---income-tax-filing/social-security-card.html", "score": -6.35145378112793}, {"title": "Social Security Card", "url": "https://www.buffalo.edu/international-student-services/social-security-card---income-tax-filing/social-security-card.html", "score": -8.054825782775879}, {"title": "Banking - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/life-in-buffalo/banking.html", "score": -8.616048812866211}], "timestamp": "2025-04-28T03:48:17.492692"}
12
+ {"query": "Hello", "response": "Hello [Student Name],\n\nThank you for reaching out to us regarding your concerns as an international student at the University at Buffalo (UB). We understand that navigating the academic and personal aspects of studying abroad can be overwhelming, especially when dealing with unfamiliar cultures, language barriers, and academic expectations. To provide you with the most accurate and helpful information, we'll break down the process into several key areas:\n\n1. Academic Support:\na. English Language Learning: The University offers English language courses specifically designed for international students. These courses cover grammar, vocabulary, reading comprehension, writing, and speaking skills. You can find more information on our website under the \"Language & Cultural Services\" section.\nb. Academic Transcripts: Your official transcripts from your home country will serve as evidence of your academic achievements while studying at UB. You can request them through the International Student Office or by submitting a transcript request form online.\nc. Course Registration: Registering for classes is crucial to ensure that you meet the academic requirements for your program. Visit the UB Calendar or the course registration portal (<https://www.buffalo.edu/courses>) to view available courses and register for them.\nd. Academic Advising: An academic advisor can help you develop a study plan, identify potential challenges, and provide guidance", "sources": [{"title": "J", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -7.357999801635742}, {"title": "Activities", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -7.7490620613098145}, {"title": "E", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -7.804978847503662}, {"title": "New Students", "url": "https://www.buffalo.edu/international-student-services/workshops-trips-events.html", "score": -8.040448188781738}, {"title": "New Students", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -8.040448188781738}], "timestamp": "2025-04-28T03:49:54.504100"}
13
+ {"query": "How do I apply for OPT?", "response": "To apply for Optional Practical Training (OPT) at the University at Buffalo (UB), follow these steps:\n\n1. Familiarize yourself with the requirements:\n - Visit the Department of International Studies (DIS) website (<https://www.buffalo.edu/international-student-services/dis/index.html>) to find the current list of departments offering OPT courses.\n - Review the course descriptions and prerequisites to ensure they align with your program of study and meet the minimum academic requirements for OPT.\n - Familiarize yourself with the F-1 and J-1 categories of visas, which differ in terms of eligibility, duration, and job opportunities.\n - Understand the difference between F-1 and J-1 students, including the differences in employment authorization, work hours, and job responsibilities.\n\n2. Obtain necessary documentation:\n - As per Source 1, you need to bring the following documents to the International Student Services (ISS) office:\n * F-1 visa application form (DS-160)\n * Proof of enrollment in an eligible degree program (e.g., transcript, official class schedule, or certificate of completion)\n * A completed F-1 Form 1040NR (Non-Resident Alien Income Tax Return)", "sources": [{"title": "Travel - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel.html", "score": -0.36291491985321045}, {"title": "Students, Faculty and Staff", "url": "https://ubisss.buffalo.edu", "score": -2.3324153423309326}, {"title": "Immigration & Visa", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -4.302586555480957}, {"title": "OPT STEM Extension", "url": "https://www.buffalo.edu/international-student-services/workshops-trips-events/workshops.html", "score": -5.6742072105407715}, {"title": "U.S. Visa", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html", "score": -7.4197916984558105}], "timestamp": "2025-04-28T04:07:46.961901"}
14
+ {"query": "What documents do I need for my I-20?", "response": "To obtain the necessary documents for your I-20, please follow these steps:\n\n1. **Financial Documentation**:\n - Bank Statements/Letters: You will need to provide proof of your income, such as bank statements, letters from your employer, or a certified check. These documents should show your monthly income, including any bonuses, commissions, or other sources of income. Make sure to include the following items:\n - A recent bank statement showing your salary or wages for the past three months.\n - A letter from your employer confirming your employment status and stating your expected salary or wage amount.\n - A copy of your tax return, if applicable, showing your income and deductions.\n - A copy of your W-2 form, if applicable, showing your employer's withholding taxes.\n\n2. **Certificate of Deposit (CD) Statements**:\n - CD Statements: If you have a CD with a maturity date within the next six months, you will need to provide a certificate of deposit (CD) statement to prove your ownership of the funds. This document should show the balance on your CD and the interest earned during the specified period. The following items are typically required:\n - A recent CD statement showing the current balance on your CD.\n - A", "sources": [{"title": "Financial Documentation - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/financial-documentation.html", "score": 5.1504974365234375}, {"title": "Your I-20 & Next Steps - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/for-new-students/your-i-20---next-steps.html", "score": 3.5453882217407227}, {"title": "2. Immigration Documents (Original Documents + One Set of Photocopies)", "url": "https://www.buffalo.edu/international-student-services/social-security-card---income-tax-filing/social-security-card.html", "score": -6.35145378112793}, {"title": "Social Security Card", "url": "https://www.buffalo.edu/international-student-services/social-security-card---income-tax-filing/social-security-card.html", "score": -8.054825782775879}, {"title": "Banking - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/life-in-buffalo/banking.html", "score": -8.616048812866211}], "timestamp": "2025-04-28T04:09:25.417379"}
15
+ {"query": "How do I apply for OPT?", "response": "To apply for Optional Practical Training (OPT) at the University at Buffalo (UB), follow these steps:\n\n1. Familiarize yourself with the requirements:\n - Visit the Department of International Studies (DIS) website (<https://www.buffalo.edu/international-student-services/dis/index.html>) to find the current list of departments offering OPT courses.\n - Review the course descriptions and prerequisites to ensure they align with your program of study and meet the minimum academic requirements for OPT.\n - Familiarize yourself with the F-1 and J-1 categories of visas, which differ in terms of eligibility, duration, and job opportunities.\n - Understand the difference between F-1 and J-1 students, including the differences in employment authorization, work hours, and job responsibilities.\n\n2. Obtain necessary documentation:\n - As per Source 1, you need to bring the following documents to the International Student Services (ISS) office:\n * F-1 visa application form (DS-160)\n * Proof of enrollment in an eligible degree program (e.g., transcript, official transcripts, or CSS Profile)\n * A completed F-1 Form 1040NR (Non-Resident Alien Income Tax Return)\n * A", "sources": [{"title": "Travel - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel.html", "score": -0.36291491985321045}, {"title": "Students, Faculty and Staff", "url": "https://ubisss.buffalo.edu", "score": -2.3324153423309326}, {"title": "Immigration & Visa", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -4.302586555480957}, {"title": "OPT STEM Extension", "url": "https://www.buffalo.edu/international-student-services/workshops-trips-events/workshops.html", "score": -5.6742072105407715}, {"title": "U.S. Visa", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html", "score": -7.4197916984558105}], "timestamp": "2025-04-28T04:22:07.971683"}
16
+ {"query": "How can I extend my student visa?", "response": "To extend your student visa, you will need to follow these steps:\n\n1. Obtain an F-1 visa: The first step is to apply for an F-1 visa, also known as a student visa. This visa allows you to enter the United States as a non-immigrant student and stay for up to four years. You can apply for an F-1 visa through the U.S. Department of State's (DHS) Electronic System for Travel Authorization (ESTA) website. Follow the instructions provided by the university's International Student Services office to complete the online application process.\n\n2. Complete the F-1 visa application: After submitting your ESTA application, you will need to gather additional documents and complete the F-1 visa application form. These include:\n\n a. Proof of financial support: A bank statement showing proof of sufficient funds to cover your tuition, living expenses, and other educational costs for the duration of your stay.\n b. Proof of English proficiency: A valid English language test score (such as TOEFL, IELTS, or Cambridge English Test) indicating that you meet the minimum requirements for academic study in the United States.\n c. Academic transcripts: Official transcripts from your previous school(s) demonstrating your academic achievements and ability to", "sources": [{"title": "Visa Information - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/for-new-students/immigration-and-visas.html", "score": -1.6663498878479004}, {"title": "Immigration & Visa", "url": "https://www.buffalo.edu/international-student-services/about-us/site-map.html", "score": -2.531528949737549}, {"title": "Your I-20 & Next Steps - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/for-new-students/your-i-20---next-steps.html", "score": -2.5841100215911865}, {"title": "U.S. Visa", "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html", "score": -4.821455955505371}, {"title": "Immigration & Visa - International Student Services - University at Buffalo", "url": "https://www.buffalo.edu/international-student-services/immigration-visa.html", "score": -5.183196544647217}], "timestamp": "2025-04-28T23:45:56.984886"}
17
+ {"query": "What are the different libraries in UB?", "response": "The University at Buffalo (UB) has several libraries that serve various purposes for students, faculty, and researchers. Here are some of the main libraries:\n\n1. UB Libraries - This is the central hub for all academic, research, and administrative services offered by UB. It houses the following libraries:\n\n a. UB Main Library - Located on the UB campus, this library offers a wide range of collections, including print and electronic resources, rare books, manuscripts, and archives. It also serves as a hub for research and study spaces, hosting workshops, seminars, and events.\n \n b. UB East Campus Library - Situated on the east side of UB, this library provides access to UB's extensive collection of books, journals, and periodicals, as well as a variety of digital resources such as online databases, e-books, and streaming media.\n \n c. UB South Campus Library - Located on the south side of UB, this library focuses on providing access to UB's collection of books, journals, and periodicals, as well as a range of digital resources, including e-books, audiobooks, and streaming media.\n \n d. UB North Campus Library - Located on the north side of UB, this library serves as a hub for research and study spaces", "sources": [{"title": "Subscribe", "url": "https://calendar.buffalo.edu/event/boost-your-internship--job-search", "score": 2.134333610534668}, {"title": "Research Guides", "url": "https://library.buffalo.edu", "score": 0.4708395004272461}, {"title": "Research Guides", "url": "https://library.buffalo.edu", "score": 0.4708395004272461}, {"title": "University at Buffalo Libraries", "url": "https://library.buffalo.edu", "score": -4.499747276306152}, {"title": "University at Buffalo Libraries", "url": "https://library.buffalo.edu", "score": -4.499747276306152}], "timestamp": "2025-04-28T23:46:22.234302"}
18
+ {"query": "name the restaurants in UB north campus", "response": "Hello [Student Name],\nThank you for reaching out to us regarding dining options on the North Campus of UB. Here are some popular restaurants located within the university:\n\n1. The Dining Commons: This iconic dining hall offers a wide range of cuisines, including American, Italian, Mexican, and Asian dishes. It features multiple dining locations, including the Main Dining Hall, the Student Union Dining Hall, and the East Side Dining Hall. You can find delicious food and drinks at The Dining Commons throughout the day, including breakfast, lunch, and dinner. To access the dining hall, simply enter the main entrance of the North Campus and follow the signs to the dining area.\n\n2. The UB Kitchen: Located in the UB Tower, The UB Kitchen serves as a hub for student cooking classes, workshops, and events. The kitchen offers a variety of menu items, including salads, sandwiches, pizzas, and desserts. Students can also take advantage of the kitchen's catering services for events and meetings. To learn more about The UB Kitchen, visit the UB Tower website or contact the culinary department directly.\n\n3. The UB Food Court: The UB Food Court is a convenient spot for grab-and-go meals, snacks, and beverages. It features a variety of fast-food chains, such as McDonald's", "sources": [{"title": "Life at UB", "url": "https://www.buffalo.edu/home/life.html", "score": 3.1820428371429443}, {"title": "Visiting UB - University at Buffalo", "url": "https://www.buffalo.edu/home/visiting-ub.html", "score": -2.2049336433410645}, {"title": "N", "url": "https://www.buffalo.edu/home/academics/degree_programs.html", "score": -6.767813205718994}, {"title": "UB Pride & Service Day", "url": "https://calendar.buffalo.edu/event/ub-pride--service-day-2", "score": -9.982414245605469}, {"title": "UB Pride & Service Day", "url": "https://calendar.buffalo.edu/event/ub-pride--service-day-2", "score": -9.982414245605469}], "timestamp": "2025-04-28T23:54:32.082853"}
data/raw/0000_www_buffalo_edu.json ADDED
@@ -0,0 +1,127 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services.html",
3
+ "title": "International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nISS is committed to supporting UB's international students during times of uncertainty. READ our [Recent Updates on Immigration Actions](https://www.buffalo.edu/international-student-services/immigration-visa/travel/travel-alerts/updates-on-recent-immigration-actions.html) to learn about resources you can access, how we are responding, and our advice in these circumstances.\nHave a question? ISS offers virtual drop-in advising throughout the week. No appointment needed!\nClick the button below or visit our [Contact Us page](/international-student-services/about-us/contact-us.html) for details.\nInternational students can work on campus but it's important to understand what rules apply. [Learn about on-campus employment](/international-student-services/immigration-visa/f-1-student/on-campus-employment.html).",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "International Student Services"
9
+ },
10
+ {
11
+ "level": 3,
12
+ "text": "F & J Travel"
13
+ },
14
+ {
15
+ "level": 3,
16
+ "text": "Working on Campus"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "Working off Campus"
21
+ },
22
+ {
23
+ "level": 3,
24
+ "text": "New to UB"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "Information Sessions"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Drop In Advising"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Student Life Events"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Follow Us on Social Media"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "New Students"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Activities"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Immigration & Visa"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "Social Security Card & Income Tax"
57
+ },
58
+ {
59
+ "level": 2,
60
+ "text": "Life in Buffalo"
61
+ },
62
+ {
63
+ "level": 2,
64
+ "text": "About Us"
65
+ },
66
+ {
67
+ "level": 1,
68
+ "text": "Your Privacy is Important To Us."
69
+ }
70
+ ],
71
+ "faqs": [],
72
+ "important_links": [
73
+ {
74
+ "text": "3/31/25Your I-20 & Next Steps",
75
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
76
+ },
77
+ {
78
+ "text": "4/18/25Visa Information",
79
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
80
+ },
81
+ {
82
+ "text": "2/10/25E-form Processing Times",
83
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
84
+ },
85
+ {
86
+ "text": "2/10/25Financial Documentation",
87
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
88
+ },
89
+ {
90
+ "text": "2/10/25Information Sessions",
91
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
92
+ },
93
+ {
94
+ "text": "Information Sessions",
95
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
96
+ },
97
+ {
98
+ "text": "3/31/25Your I-20 & Next Steps",
99
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
100
+ },
101
+ {
102
+ "text": "4/18/25Visa Information",
103
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Information Sessions",
107
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
108
+ },
109
+ {
110
+ "text": "2/10/25E-form Processing Times",
111
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
112
+ },
113
+ {
114
+ "text": "2/10/25Financial Documentation",
115
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
116
+ }
117
+ ],
118
+ "categories": [
119
+ "immigration",
120
+ "employment"
121
+ ],
122
+ "scraped_at": "2025-04-26T01:27:25.411366",
123
+ "path_hierarchy": [
124
+ "international-student-services.html"
125
+ ],
126
+ "domain": "www.buffalo.edu"
127
+ }
data/raw/0001_www_buffalo_edu.json ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu",
3
+ "title": "Welcome to the University at Buffalo - University at Buffalo",
4
+ "content": "We have your major\nWhatever your passion, you\u2019ll find your path at New York\u2019s flagship university. UB is No. 1 in the Northeast for its range of 500+ degree programs. And we\u2019re always creating more.\nSee more [stories](/home/how.html) of UB\u2019s impact\n#36\npublic university in U.S.\n1st\nSUNY invited to join AAU\n#1\npublic university\nin NYS for\nresearch activity\n#2\nin U.S. for climate action\n12:1\nstudent/faculty ratio",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Your Privacy is Important To Us."
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "We have your major"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "See morestoriesof UB\u2019s impact"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "Come see what it means to be True Blue"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Schools and Colleges"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Find People and Departments"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Join Our UB Family"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "For Media"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "UB Social Media"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Maps and Directions"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "UB Mobile App"
49
+ }
50
+ ],
51
+ "faqs": [],
52
+ "important_links": [
53
+ {
54
+ "text": "2/24/25Find it in the Student Guide",
55
+ "url": "/studentlife.html"
56
+ },
57
+ {
58
+ "text": "2/24/25Student Guide",
59
+ "url": "/studentlife.html"
60
+ }
61
+ ],
62
+ "categories": [],
63
+ "scraped_at": "2025-04-26T01:27:30.545768",
64
+ "path_hierarchy": [],
65
+ "domain": "www.buffalo.edu"
66
+ }
data/raw/0002_www_buffalo_edu.json ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/internationaleducation.html",
3
+ "title": "International Education - University at Buffalo",
4
+ "content": "As a diverse and inclusive scholarly community committed to academic freedom, UB has established the UB Scholars at Risk Fellowship to afford highly qualified academics around the world who are threatened in their own countries the opportunity to continue their research and teaching in a safe and supportive environment at UB.\nUB offers a variety of undergraduate programs in the Singapore Institute of Management (SIM), which prepares highly qualified graduates for exciting careers in Singapore\u2014as well as advanced degree programs in Singapore and abroad.\nThe Office of International Education (OIE) offers a variety of funding opportunities to support global and international research collaborations by faculty and graduate students.\nThe latest census by the Institute of International Education ranked UB No. 24 among the nation\u2019s colleges and universities hosting international students.\nThe goal of an International Faculty Launch Program at the University at Buffalo is to provide advice, information, and encouragement for new international faculty, within a confidential and positive atmosphere.\nUB schools and departments wishing to develop new international affiliations that require formal agreements should review this information and follow these guidelines.\nThe Office of International Education collaborates with participating schools in the development, approval and delivery of UB degree programs in other countries.\nThe University at Buffalo maintains institutional partnerships with more than 80 leading universities around the globe. These affiliations significantly enhance UB\u2019s international engagement and global reach, and help advance the university\u2019s research, education and service missions.\nAs a diverse and inclusive scholarly community committed to academic freedom, UB has established the UB Scholars at Risk Fellowship to afford highly qualified academics around the world who are threatened in their own countries the opportunity to continue their research and teaching in a safe and supportive environment at UB.\nUB offers a variety of undergraduate programs in the Singapore Institute of Management (SIM), which prepares highly qualified graduates for exciting careers in Singapore\u2014as well as advanced degree programs in Singapore and abroad.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "International Education"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Events"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Upcoming Events"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Campus-Wide International News"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "What We Do"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "You may also be looking for"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "About"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Services & Programs"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "News & Events"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Grants & Fellowships"
45
+ },
46
+ {
47
+ "level": 1,
48
+ "text": "Your Privacy is Important To Us."
49
+ }
50
+ ],
51
+ "faqs": [],
52
+ "important_links": [],
53
+ "categories": [],
54
+ "scraped_at": "2025-04-26T01:27:33.574783",
55
+ "path_hierarchy": [
56
+ "internationaleducation.html"
57
+ ],
58
+ "domain": "www.buffalo.edu"
59
+ }
data/raw/0003_www_buffalo_edu.json ADDED
@@ -0,0 +1,201 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/about-us/contact-us.html",
3
+ "title": "Contact Us - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nBefore you contact us, answers to most frequently asked questions are found on:\nDue to the high advising volume, advisors will not be meeting with those asking about processing times or those requesting an expedite.\nFor current processing times, please review [our website.](/international-student-services/immigration-visa/e-form-processing-times.html) If your request is outside of processing times, you can email us. Our team will review this information and follow-up with you to provide an updated timeline for the request or guidance on next steps.\nStill have a question? This is how you can reach us:\nHave questions? No appointment needed! Click the tab that fits your situation to see your advising options.\nNavigate Drop-ins\nIn-person Drop-ins\nNavigate Drop-ins\nNavigate Drop-ins\nDrop-ins are only active in Navigate during hours listed above. If you try to access the queue outside of advising hours you will not see ISS as an option.\nIt is not possible to book a drop-in appointment. Advising during drop-in times is first-come, first-served.\nIf you graduated more than 1 year ago, please visit us during OPT advising. Navigate may not work for you.\nTry accessing Navigate directly: [buffalo.edu/ubsuccess](https://buffalo.edu/ubsuccess/)\nMonday - Friday 9AM - 5PM\n[[email protected]](mailto:[email protected])\nPlease allow 3-4 business days for a response.\nThe 1st business day is the first full day immediately following ISS receiving your email. Business days are Monday, Tuesday, Wednesday, Thursday, Friday. University holidays are not considered business days.\nOur phone line is monitored by our student staff. Student staff can help connect you with resources and answer questions about using Navigate Drop-ins. Student staff do not answer immigration questions.\nIf you have immigration questions, connect with an ISS advisor using our advising services listed above.\nISS offers pick-up for select document requests. If pick-up is available for your request you will see the option in the specific e-form on [UB Global.](/international-student-services/about-us/ub-global.html)\nRequests that do not require a physical print-out are sent by email.\nThe shortest path of travel from an accessible parking space to a barrier-free entrance is 299 feet:\n| Feature | Available |\n|---|---|\n| Automatic door | Yes |\n| Ramp | Not applicable |\n| Bicycle rack | Yes |\nTo report a problem or provide feedback about these directions, please contact Equity, Diversity and Inclusion (EDI) at [[email protected]](mailto:[email protected]).",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Contact Us"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "On this page"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Advising Schedule"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "Monday"
21
+ },
22
+ {
23
+ "level": 3,
24
+ "text": "Tuesday"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "Thursday"
29
+ },
30
+ {
31
+ "level": 3,
32
+ "text": "Friday"
33
+ },
34
+ {
35
+ "level": 4,
36
+ "text": "Navigate Drop-ins"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "How to Use Navigate Drop-in Advising"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Need Help Using Navigate?"
45
+ },
46
+ {
47
+ "level": 3,
48
+ "text": "Issues Accessing Navigate?"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Email Assistance"
53
+ },
54
+ {
55
+ "level": 4,
56
+ "text": "Counting Business Days"
57
+ },
58
+ {
59
+ "level": 2,
60
+ "text": "Phone Assistance"
61
+ },
62
+ {
63
+ "level": 2,
64
+ "text": "Document Pick-Up"
65
+ },
66
+ {
67
+ "level": 3,
68
+ "text": "Document Pick-up Hours"
69
+ },
70
+ {
71
+ "level": 2,
72
+ "text": "Accessible Directions and Map"
73
+ },
74
+ {
75
+ "level": 3,
76
+ "text": "Accessible Routes for Visiting Us"
77
+ },
78
+ {
79
+ "level": 2,
80
+ "text": "Talbert Hall"
81
+ },
82
+ {
83
+ "level": 3,
84
+ "text": "Accessible parking"
85
+ },
86
+ {
87
+ "level": 3,
88
+ "text": "Outside approach"
89
+ },
90
+ {
91
+ "level": 3,
92
+ "text": "210 Talbert Hall"
93
+ },
94
+ {
95
+ "level": 2,
96
+ "text": "New Students"
97
+ },
98
+ {
99
+ "level": 2,
100
+ "text": "Activities"
101
+ },
102
+ {
103
+ "level": 2,
104
+ "text": "Immigration & Visa"
105
+ },
106
+ {
107
+ "level": 2,
108
+ "text": "Social Security Card & Income Tax"
109
+ },
110
+ {
111
+ "level": 2,
112
+ "text": "Life in Buffalo"
113
+ },
114
+ {
115
+ "level": 2,
116
+ "text": "About Us"
117
+ },
118
+ {
119
+ "level": 1,
120
+ "text": "Your Privacy is Important To Us."
121
+ }
122
+ ],
123
+ "faqs": [],
124
+ "important_links": [
125
+ {
126
+ "text": "3/31/25Your I-20 & Next Steps",
127
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
128
+ },
129
+ {
130
+ "text": "4/18/25Visa Information",
131
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
132
+ },
133
+ {
134
+ "text": "2/10/25E-form Processing Times",
135
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
136
+ },
137
+ {
138
+ "text": "2/10/25Financial Documentation",
139
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
140
+ },
141
+ {
142
+ "text": "2/10/25Information Sessions",
143
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
144
+ },
145
+ {
146
+ "text": "Document Pick-Up",
147
+ "url": "#title_1184985257"
148
+ },
149
+ {
150
+ "text": "4/5/25Curricular Practical Training (CPT)",
151
+ "url": "/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html"
152
+ },
153
+ {
154
+ "text": "2/22/24Optional Practical Training (OPT)",
155
+ "url": "/international-student-services/immigration-visa/f-1-student/optional-practical-training--opt-.html"
156
+ },
157
+ {
158
+ "text": "OPT STEM Extension",
159
+ "url": "http://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/optional-practical-training--opt-/24-month-stem-extension.html"
160
+ },
161
+ {
162
+ "text": "Post-Completion OPT",
163
+ "url": "/international-student-services/about-us/contact-us.post-completion-opt.html"
164
+ },
165
+ {
166
+ "text": "STEM OPT",
167
+ "url": "/international-student-services/about-us/contact-us.stem-opt.html"
168
+ },
169
+ {
170
+ "text": "3/31/25Your I-20 & Next Steps",
171
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
172
+ },
173
+ {
174
+ "text": "4/18/25Visa Information",
175
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
176
+ },
177
+ {
178
+ "text": "2/10/25Information Sessions",
179
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
180
+ },
181
+ {
182
+ "text": "2/10/25E-form Processing Times",
183
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
184
+ },
185
+ {
186
+ "text": "2/10/25Financial Documentation",
187
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
188
+ }
189
+ ],
190
+ "categories": [
191
+ "immigration",
192
+ "employment"
193
+ ],
194
+ "scraped_at": "2025-04-26T01:19:28.867635",
195
+ "path_hierarchy": [
196
+ "international-student-services",
197
+ "about-us",
198
+ "contact-us.html"
199
+ ],
200
+ "domain": "www.buffalo.edu"
201
+ }
data/raw/0004_ubisss_buffalo_edu.json ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://ubisss.buffalo.edu",
3
+ "title": "UB Global",
4
+ "content": "UB Global\nUB Global provides a variety of online services for international students, scholars and employees. Below are examples of the services available for each type of user. Please log in for full access to your international services account.\nStudents, Faculty and Staff\n- New Students: ISS Check-in, Reporting Visa delays, etc.\n- Current Students: Reduced Course Load, Practical Training, Transfer Request, etc.\n- Students on OPT: Employment reporting, U.S. address changes, change of status, etc.\n- Faculty and Staff: Process e-form requests for students in your department.\n- ISS, IA, IS, ELI: Administrative Services\nStudents on OPT: change your UBITName password. Starting in 2022, UB students are required to change their UBITName password. If you do not change your password, you will be unable to access your UB account in the future. If you have not done so already, please log into ubidm.buffalo.edu and change your password as soon as possible. [Learn more](https://www.buffalo.edu/ubit/news/article.host.html/content/shared/www/ubit/news/2021/password-resets-select-accounts.detail.html)\nUB Global Issues\nWe are aware that some students are having trouble uploading documents in e-form requests. Our team is working closely with tech support to fix these issues. The system is working intermittenly, so please keep trying and we hope to have it fixed soon.",
5
+ "headings": [
6
+ {
7
+ "level": 3,
8
+ "text": "UB Global"
9
+ },
10
+ {
11
+ "level": 1,
12
+ "text": "UB Global"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Students, Faculty and Staff"
17
+ },
18
+ {
19
+ "level": 4,
20
+ "text": "Secure Online Session"
21
+ }
22
+ ],
23
+ "faqs": [],
24
+ "important_links": [],
25
+ "categories": [
26
+ "immigration",
27
+ "employment"
28
+ ],
29
+ "scraped_at": "2025-04-26T01:19:31.570969",
30
+ "path_hierarchy": [],
31
+ "domain": "ubisss.buffalo.edu"
32
+ }
data/raw/0005_www_buffalo_edu.json ADDED
@@ -0,0 +1,119 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/for-new-students.html",
3
+ "title": "New Students - International Student Services - University at Buffalo",
4
+ "content": "Congratulations on your acceptance to the University at Buffalo!\nWe would like to welcome you to UB! UB has a longstanding tradition of welcoming students, faculty and researchers from around the world. Our international population enriches our community through its knowledge, talents, and diverse perspectives. Here we truly embrace the American principles of inclusion for all people regardless of their race, religion or nationality.\nThe information contained in this web site is provided as a service to the international students, faculty, staff, employees and administrators of the University at Buffalo, and does not constitute legal advice on any immigration, tax or other matter. We try to provide useful information, but we make no claims, promises or guarantees about the accuracy, completeness or adequacy of the information contained in or linked to this website or any associated site. As legal advice must be tailored to the specific circumstances of each case, and laws are constantly changing, nothing provided herein should be used as a substitute for the advice of competent counsel. Neither the University at Buffalo nor the Office of International Student Services is responsible for any errors or omissions contained in this website, or for the results obtained from the use of this information.",
5
+ "headings": [
6
+ {
7
+ "level": 2,
8
+ "text": "Admissions FAQ"
9
+ },
10
+ {
11
+ "level": 1,
12
+ "text": "New Students"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Welcome to UB"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Disclaimer"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "New Students"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Activities"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Immigration & Visa"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Social Security Card & Income Tax"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Life in Buffalo"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "About Us"
45
+ },
46
+ {
47
+ "level": 1,
48
+ "text": "Your Privacy is Important To Us."
49
+ }
50
+ ],
51
+ "faqs": [],
52
+ "important_links": [
53
+ {
54
+ "text": "3/31/25Your I-20 & Next Steps",
55
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
56
+ },
57
+ {
58
+ "text": "4/18/25Visa Information",
59
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
60
+ },
61
+ {
62
+ "text": "2/10/25E-form Processing Times",
63
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
64
+ },
65
+ {
66
+ "text": "2/10/25Financial Documentation",
67
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
68
+ },
69
+ {
70
+ "text": "2/10/25Information Sessions",
71
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
72
+ },
73
+ {
74
+ "text": "Your I-20 & Next Steps",
75
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
76
+ },
77
+ {
78
+ "text": "Visa Information",
79
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
80
+ },
81
+ {
82
+ "text": "Your I-20 & Next Steps3/31/25",
83
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
84
+ },
85
+ {
86
+ "text": "Visa Information4/18/25",
87
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
88
+ },
89
+ {
90
+ "text": "3/31/25Your I-20 & Next Steps",
91
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
92
+ },
93
+ {
94
+ "text": "4/18/25Visa Information",
95
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
96
+ },
97
+ {
98
+ "text": "2/10/25Information Sessions",
99
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
100
+ },
101
+ {
102
+ "text": "2/10/25E-form Processing Times",
103
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Financial Documentation",
107
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
108
+ }
109
+ ],
110
+ "categories": [
111
+ "immigration"
112
+ ],
113
+ "scraped_at": "2025-04-26T01:19:34.094576",
114
+ "path_hierarchy": [
115
+ "international-student-services",
116
+ "for-new-students.html"
117
+ ],
118
+ "domain": "www.buffalo.edu"
119
+ }
data/raw/0006_www_buffalo_edu.json ADDED
@@ -0,0 +1,137 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/for-new-students/your-i-20---next-steps.html",
3
+ "title": "Your I-20 & Next Steps - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nWelcome to UB! We're excited to have you join our community. Once you receive your I-20, there are a few important steps you'll need to follow to prepare for your journey to the U.S.\nVerify all information listed on your I-20 is accurate. If any discrepancies are found, notify us immediately, so the I-20 can be revised and reissued. Please review the [FAQ for F-1 Students](https://www.buffalo.edu/internationaladmissions/reference/frequently-asked-questions.html) to help determine if the details on your I-20 follows federal guidance and UB policy.\nStudent Attestation\nRegulation requires all prospective F-1 students to pay the I-901 Student and Exchange Visitor Information System (SEVIS) Fee before the Department of State issues you a visa. Additional information can be found on the [Study in the States](https://studyinthestates.dhs.gov/students/prepare/paying-the-i-901-sevis-fee) website.\nTo pay the I-901 SEVIS Fee [visit FMJfee.com](https://www.fmjfee.com/i901fee/index.html) to access the SEVIS Form I-901.\nAll prospective F-1 students must obtain a student visa to request entry to the U.S. in F-1 status.\nVisit the U.S. Department of State for instructions on [how to apply for an F-1 visa](https://travel.state.gov/content/travel/en/us-visas/study/student-visa.html).\n*Citizens of Canada are not required to obtain an F-1 visa. Canadian citizens must clearly present the I-20 and SEVIS Fee documentation at the port of entry to ensure they are correctly admitted in F-1 status.\nYou may enter the U.S. no more than 30 days prior to the start date listed on your I-20.\nLatest recommended arrival dates:",
5
+ "headings": [
6
+ {
7
+ "level": 2,
8
+ "text": "Admissions FAQ"
9
+ },
10
+ {
11
+ "level": 1,
12
+ "text": "Your I-20 & Next Steps"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Step 1: Check Your I-20 For Errors"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Step 2: Sign Your I-20"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Step 3: Begin ISS Check-in"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "When is Check-in Available?"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Step 4: Pay the SEVIS I-901 Fee"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Step 5: Apply for an F-1 Visa"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Step 6: Review Pre-Arrival & Orientation Details"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Step 7: Plan Your Travel"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "New Students"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Activities"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "Immigration & Visa"
57
+ },
58
+ {
59
+ "level": 2,
60
+ "text": "Social Security Card & Income Tax"
61
+ },
62
+ {
63
+ "level": 2,
64
+ "text": "Life in Buffalo"
65
+ },
66
+ {
67
+ "level": 2,
68
+ "text": "About Us"
69
+ },
70
+ {
71
+ "level": 1,
72
+ "text": "Your Privacy is Important To Us."
73
+ }
74
+ ],
75
+ "faqs": [],
76
+ "important_links": [
77
+ {
78
+ "text": "3/31/25Your I-20 & Next Steps",
79
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
80
+ },
81
+ {
82
+ "text": "4/18/25Visa Information",
83
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
84
+ },
85
+ {
86
+ "text": "2/10/25E-form Processing Times",
87
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
88
+ },
89
+ {
90
+ "text": "2/10/25Financial Documentation",
91
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
92
+ },
93
+ {
94
+ "text": "2/10/25Information Sessions",
95
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
96
+ },
97
+ {
98
+ "text": "Your I-20 & Next Steps",
99
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
100
+ },
101
+ {
102
+ "text": "Visa Information",
103
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
104
+ },
105
+ {
106
+ "text": "3/31/25Your I-20 & Next Steps",
107
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
108
+ },
109
+ {
110
+ "text": "4/18/25Visa Information",
111
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
112
+ },
113
+ {
114
+ "text": "2/10/25Information Sessions",
115
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
116
+ },
117
+ {
118
+ "text": "2/10/25E-form Processing Times",
119
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
120
+ },
121
+ {
122
+ "text": "2/10/25Financial Documentation",
123
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
124
+ }
125
+ ],
126
+ "categories": [
127
+ "immigration",
128
+ "fees"
129
+ ],
130
+ "scraped_at": "2025-04-26T01:19:36.854009",
131
+ "path_hierarchy": [
132
+ "international-student-services",
133
+ "for-new-students",
134
+ "your-i-20---next-steps.html"
135
+ ],
136
+ "domain": "www.buffalo.edu"
137
+ }
data/raw/0007_www_buffalo_edu.json ADDED
@@ -0,0 +1,198 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/for-new-students/immigration-and-visas.html",
3
+ "title": "Visa Information - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nWe can't wait to see you in Buffalo! Use these pages to help plan your arrival.\nYour visa category will impact many parts of your life in the U.S. Your studies, employment, vacation, and travel are a few examples. Your visa (sometimes referred to as visa stamp or visa foil) is the document placed on a page in your passport that permits you to apply for admission to the U.S. in accordance with your visa category.\nMost international students come to the U.S. on F-1 visas, while some come on J-1 visas. However, there are some other visa categories that permit studying (H-1B, H-4, L-2, E-2, etc.).\nTo come to the United States to study, you will need to apply for a visa at a U.S. Embassy or Consulate.\nYou cannot study for a degree on a tourist (B-1/2) visa or on the Visa Waiver Program (VWP). Therefore, you should not enter the U.S. as a B-1/2 or on the VWP if you plan to study.\nIf you are already in the U.S. on an F-1 or J-1 visa, you can study at UB on the same visa.\nVisas are entry permits that allow you to enter the U.S. from anywhere in the world, if your visa and number of entries have not expired, and if all of your other immigration documents are in order. Visas do not determine how long you can stay in the U.S., so, unless you travel abroad before joining UB, you can study at UB without renewing your visa even if it has expired.\nIf you are currently outside the U.S., you must apply for a U.S. visa stamp before you can arrive.\nIf you're not sure who to put as your contact? UB students can use ISS's information:\nISS cannot answer this question for you. We recommend you use your best estimate on the time you need to complete your program. You can contact your academic department for an estimate if you are not sure.\nYour answer to this question does not determine the [length of your visa](https://travel.state.gov/content/travel/en/us-visas/Visa-Reciprocity-and-Civil-Documents-by-Country.html).\nISS cannot provide detailed guidance on completing your DS-160. If you have questions we recommend contacting your local embassy or consulate for assistance.\nCanadian students do not need to apply for a U.S. visa.\nBefore you can transfer to UB from another U.S. school, be sure you understand how a transfer may affect your immigration status.\nIf you are already in the U.S. as an F-1 or J-1 student, it may be possible to transfer your SEVIS (Student and Exchange Visitor Information System) record from your current school to UB.\nAs a SEVIS transfer student, you will receive a \u201cTransfer Pending from (current school)\u201d I-20 instead of an \u201cInitial\u201d I-20.\nTo be eligible for a SEVIS transfer, you must:\nYour transfer release date is the day your current school releases your SEVIS record to your new school.\nThe only exception to the requirement to enroll during the next available session is when it is a summer vacation for which you are eligible. To be eligible for this exception, you must have been enrolled at a U.S. school for a full academic year AND you must enroll within five months of your transfer release date.\nIf you are not eligible for a SEVIS transfer, you must depart the U.S. and re-enter with an Initial I-20.\nThe rules for J-1 students\u2019 transfers are different than for F-1 students. If you are a J-1 student hoping to transfer, contact our office for advice.\nYou can transfer to another school during the 60-day grace period after your OPT, as long as the transfer release date occurs within the grace period.\nYou must begin classes within 5 months of your transfer release date or the date your OPT authorization ends, whichever is earlier.\nYour OPT work authorization will end on your transfer release date. Therefore, if you wish to complete your OPT, your transfer release date must be after your OPT ends.\nIf you meet all the conditions for a SEVIS transfer, you do not need to pay the SEVIS fee again.\nYes, but you must be careful to re-enter the U.S. using the I-20/DS-2019 issued by the school that currently has your SEVIS record.\nYou\u2019re ready for the next step in your UB education and we're glad to have you back!\nIf you have continually maintained your F-1 or J-1 status or were outside the U.S. for fewer than five months, you do not need to pay the SEVIS fee again. However, if you failed to maintain your F-1 or J-1 status or were outside the U.S. for more than five months not on authorized overseas study, you will have to pay the SEVIS fee again.\nYour OPT work authorization will automatically end when you start studying in your new degree program.\nYou can study part time while on OPT as long as you are not admitted to a new degree program at UB.\nIf you apply to a new degree program and change your mind after you receive admission to the program, inform International Student Services.",
5
+ "headings": [
6
+ {
7
+ "level": 2,
8
+ "text": "Admissions FAQ"
9
+ },
10
+ {
11
+ "level": 1,
12
+ "text": "Visa Information for Accepted Students"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "What is a U.S. visa?"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "Can I use my current student visa if it is still valid?"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "New to the U.S."
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "How do I apply for a student visa?"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Tips for Your DS-160"
33
+ },
34
+ {
35
+ "level": 3,
36
+ "text": "U.S. Point of Contact"
37
+ },
38
+ {
39
+ "level": 3,
40
+ "text": "Intended Length of Stay"
41
+ },
42
+ {
43
+ "level": 3,
44
+ "text": "Important Points to Consider"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Transferring from Other U.S. Schools"
49
+ },
50
+ {
51
+ "level": 3,
52
+ "text": "What if I am already in the U.S. as an F-1 or J-1 student?"
53
+ },
54
+ {
55
+ "level": 3,
56
+ "text": "Am I eligible for a SEVIS transfer?"
57
+ },
58
+ {
59
+ "level": 4,
60
+ "text": "Enrollment exception"
61
+ },
62
+ {
63
+ "level": 3,
64
+ "text": "J-1 transfers"
65
+ },
66
+ {
67
+ "level": 3,
68
+ "text": "What if I am on Optional Practical Training (OPT)?"
69
+ },
70
+ {
71
+ "level": 3,
72
+ "text": "Do I have to pay the SEVIS fee again?"
73
+ },
74
+ {
75
+ "level": 3,
76
+ "text": "If I am transferring, can I travel outside the U.S.?"
77
+ },
78
+ {
79
+ "level": 2,
80
+ "text": "Continuing UB Students"
81
+ },
82
+ {
83
+ "level": 3,
84
+ "text": "Do I have to pay the SEVIS fee again?"
85
+ },
86
+ {
87
+ "level": 3,
88
+ "text": "What if I am on Optional Practical Training (OPT)?"
89
+ },
90
+ {
91
+ "level": 3,
92
+ "text": "Disclaimer"
93
+ },
94
+ {
95
+ "level": 2,
96
+ "text": "New Students"
97
+ },
98
+ {
99
+ "level": 2,
100
+ "text": "Activities"
101
+ },
102
+ {
103
+ "level": 2,
104
+ "text": "Immigration & Visa"
105
+ },
106
+ {
107
+ "level": 2,
108
+ "text": "Social Security Card & Income Tax"
109
+ },
110
+ {
111
+ "level": 2,
112
+ "text": "Life in Buffalo"
113
+ },
114
+ {
115
+ "level": 2,
116
+ "text": "About Us"
117
+ },
118
+ {
119
+ "level": 1,
120
+ "text": "Your Privacy is Important To Us."
121
+ }
122
+ ],
123
+ "faqs": [],
124
+ "important_links": [
125
+ {
126
+ "text": "3/31/25Your I-20 & Next Steps",
127
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
128
+ },
129
+ {
130
+ "text": "4/18/25Visa Information",
131
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
132
+ },
133
+ {
134
+ "text": "2/10/25E-form Processing Times",
135
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
136
+ },
137
+ {
138
+ "text": "2/10/25Financial Documentation",
139
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
140
+ },
141
+ {
142
+ "text": "2/10/25Information Sessions",
143
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
144
+ },
145
+ {
146
+ "text": "Your I-20 & Next Steps",
147
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
148
+ },
149
+ {
150
+ "text": "Visa Information",
151
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
152
+ },
153
+ {
154
+ "text": "application instructions",
155
+ "url": "https://travel.state.gov/content/travel/en/us-visas/visa-information-resources/forms/ds-160-online-nonimmigrant-visa-application.html"
156
+ },
157
+ {
158
+ "text": "Learn about F-1 visa and other F-1 immigration documents",
159
+ "url": "/international-student-services/immigration-visa/f-1-student/immigration-documents.html"
160
+ },
161
+ {
162
+ "text": "Learn about J-1 visa and other J-1 immigration documents",
163
+ "url": "/international-student-services/immigration-visa/j-1-student1/j-1-student/immigration-documents.html"
164
+ },
165
+ {
166
+ "text": "3/31/25Your I-20 & Next Steps",
167
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
168
+ },
169
+ {
170
+ "text": "4/18/25Visa Information",
171
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
172
+ },
173
+ {
174
+ "text": "2/10/25Information Sessions",
175
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
176
+ },
177
+ {
178
+ "text": "2/10/25E-form Processing Times",
179
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
180
+ },
181
+ {
182
+ "text": "2/10/25Financial Documentation",
183
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
184
+ }
185
+ ],
186
+ "categories": [
187
+ "immigration",
188
+ "employment",
189
+ "fees"
190
+ ],
191
+ "scraped_at": "2025-04-26T01:19:39.773146",
192
+ "path_hierarchy": [
193
+ "international-student-services",
194
+ "for-new-students",
195
+ "immigration-and-visas.html"
196
+ ],
197
+ "domain": "www.buffalo.edu"
198
+ }
data/raw/0008_www_buffalo_edu.json ADDED
@@ -0,0 +1,180 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/for-new-students/new-international-student-check-in.html",
3
+ "title": "Check-In & Arrival - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nTo meet reporting requirements & be able to register for classes, complete your International Student Check-in early.\nAll F-1 and J-1 students starting a new program at UB, transferring to UB from another U.S. university or entering the U.S. with an initial I-20/DS-2019 are required to complete the International Student Check-in. There are several steps involved so we recommend you begin as soon as possible.\nYou cannot access your International Student Check-in until you have activated your UBIT account. If you're having trouble activating your account, visit [buffalo.edu/ubit/help](https://www.buffalo.edu/ubit/help) for assistance.\nISS prioritizes e-form requests based on timing of submission and order of processing priority for the office. Find a list of [e-form processing times](/international-student-services/immigration-visa/e-form-processing-times.html) for all ISS e-forms.\nWhen you arrive in the United States, it is important to have the right documents and know what to expect at the border.\nYou will need to carry the documents listed below with you. Do not pack them in your luggage because you will need to show them to the immigration inspector when you enter the U.S.\nFirst, after deplaning you will proceed to passport control.\nSecond, you will proceed to the baggage claim area and go through customs.\nNever make false statements to a border officer as the penalty for doing so is very severe.\nYou may enter the U.S. no more than 30 days before the start date listed on your I-20/DS-2019.\nClasses begin on Monday, August 25, 2025.\nWe know that things outside of your control, like travel problems and visa delays, can happen. If you will not be able to arrive in the U.S. by your program start date, please review the process for requesting a late arrival support letter.",
5
+ "headings": [
6
+ {
7
+ "level": 2,
8
+ "text": "Want to learn more?"
9
+ },
10
+ {
11
+ "level": 1,
12
+ "text": "Check-in & Arriving at UB"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Who Needs to do International Student Check-in?"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Completing International Student Check-in"
21
+ },
22
+ {
23
+ "level": 3,
24
+ "text": "Before You Begin"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "How to Access International Student Check-in"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "After Starting Check-in"
33
+ },
34
+ {
35
+ "level": 3,
36
+ "text": "Undergraduate Students"
37
+ },
38
+ {
39
+ "level": 3,
40
+ "text": "Graduate Students"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Arriving in the U.S."
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Preparing Immigration Documents"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Traveling with Dependents"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "Going Through Customs"
57
+ },
58
+ {
59
+ "level": 2,
60
+ "text": "Arrival Deadlines"
61
+ },
62
+ {
63
+ "level": 3,
64
+ "text": "Know When to Arrive"
65
+ },
66
+ {
67
+ "level": 4,
68
+ "text": "Graduate, J-1 and UB/SIM Students"
69
+ },
70
+ {
71
+ "level": 4,
72
+ "text": "Undergraduate Students"
73
+ },
74
+ {
75
+ "level": 3,
76
+ "text": "Late Arrival"
77
+ },
78
+ {
79
+ "level": 2,
80
+ "text": "New Students"
81
+ },
82
+ {
83
+ "level": 2,
84
+ "text": "Activities"
85
+ },
86
+ {
87
+ "level": 2,
88
+ "text": "Immigration & Visa"
89
+ },
90
+ {
91
+ "level": 2,
92
+ "text": "Social Security Card & Income Tax"
93
+ },
94
+ {
95
+ "level": 2,
96
+ "text": "Life in Buffalo"
97
+ },
98
+ {
99
+ "level": 2,
100
+ "text": "About Us"
101
+ },
102
+ {
103
+ "level": 1,
104
+ "text": "Your Privacy is Important To Us."
105
+ }
106
+ ],
107
+ "faqs": [],
108
+ "important_links": [
109
+ {
110
+ "text": "3/31/25Your I-20 & Next Steps",
111
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
112
+ },
113
+ {
114
+ "text": "4/18/25Visa Information",
115
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
116
+ },
117
+ {
118
+ "text": "2/10/25E-form Processing Times",
119
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
120
+ },
121
+ {
122
+ "text": "2/10/25Financial Documentation",
123
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
124
+ },
125
+ {
126
+ "text": "2/10/25Information Sessions",
127
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
128
+ },
129
+ {
130
+ "text": "Your I-20 & Next Steps",
131
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
132
+ },
133
+ {
134
+ "text": "Visa Information",
135
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
136
+ },
137
+ {
138
+ "text": "Pre-Arrival Information Sessions",
139
+ "url": "/international-student-services/for-new-students/graduate-students/pre-arrival-information-sessions.html"
140
+ },
141
+ {
142
+ "text": "e-form processing times",
143
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
144
+ },
145
+ {
146
+ "text": "Read about F-1 immigration documents",
147
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/immigration-documents.html"
148
+ },
149
+ {
150
+ "text": "3/31/25Your I-20 & Next Steps",
151
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
152
+ },
153
+ {
154
+ "text": "4/18/25Visa Information",
155
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
156
+ },
157
+ {
158
+ "text": "2/10/25Information Sessions",
159
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
160
+ },
161
+ {
162
+ "text": "2/10/25E-form Processing Times",
163
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
164
+ },
165
+ {
166
+ "text": "2/10/25Financial Documentation",
167
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
168
+ }
169
+ ],
170
+ "categories": [
171
+ "immigration"
172
+ ],
173
+ "scraped_at": "2025-04-26T01:19:42.796366",
174
+ "path_hierarchy": [
175
+ "international-student-services",
176
+ "for-new-students",
177
+ "new-international-student-check-in.html"
178
+ ],
179
+ "domain": "www.buffalo.edu"
180
+ }
data/raw/0009_www_buffalo_edu.json ADDED
@@ -0,0 +1,120 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/for-new-students/undergraduate-students.html",
3
+ "title": "Undergraduate Students - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nWelcome undergraduate students! Along with New to UB orientation programs, we're here to help you succeed at UB.\nAll first-year and transfer undergraduate F-1 students will participate in the New to UB orientation programs.\nStart with [Frequently Asked Questions (FAQ)](https://www.buffalo.edu/studentlife/new-to-ub/first-year-and-transfer-students/faqs-orientation.html) in the Student Guide. If you need additional information please contact Orientation, Transition and Parent Programs. They will respond during their regular business hours of Monday through Friday from 8:30 a.m. - 5:00 p.m. Eastern time.\nThe International Student Welcome Fee (listed as \"International Student ISS Orientation - Undergraduate\" on your student account) is a one-time $25 charge for undergraduate international students new to the UB campus that covers welcome and transition programming provided by ISS.\nThis fee will appear on your student account during the second or third billing cycle. The fee is charged to all new students, and is not charged based on your choice of participation in any or all of the welcome and transition programming offered by ISS.\nThis fee is separate from the orientation fee that covers your New to UB programming and communications facilitated by OTPP ([Orientation, Transition, and Parent Programs](https://www.buffalo.edu/studentlife/who-we-are/departments/orientation.html))",
5
+ "headings": [
6
+ {
7
+ "level": 2,
8
+ "text": "Coming to UB from SIM?"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Admissions FAQ"
13
+ },
14
+ {
15
+ "level": 1,
16
+ "text": "Undergraduate Students"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "New to UB Orientation Programs"
21
+ },
22
+ {
23
+ "level": 3,
24
+ "text": "New to UB Questions?"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "International Student Welcome Fee"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "New Students"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Activities"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Immigration & Visa"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Social Security Card & Income Tax"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Life in Buffalo"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "About Us"
53
+ },
54
+ {
55
+ "level": 1,
56
+ "text": "Your Privacy is Important To Us."
57
+ }
58
+ ],
59
+ "faqs": [],
60
+ "important_links": [
61
+ {
62
+ "text": "3/31/25Your I-20 & Next Steps",
63
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
64
+ },
65
+ {
66
+ "text": "4/18/25Visa Information",
67
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
68
+ },
69
+ {
70
+ "text": "2/10/25E-form Processing Times",
71
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
72
+ },
73
+ {
74
+ "text": "2/10/25Financial Documentation",
75
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
76
+ },
77
+ {
78
+ "text": "2/10/25Information Sessions",
79
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
80
+ },
81
+ {
82
+ "text": "Your I-20 & Next Steps",
83
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
84
+ },
85
+ {
86
+ "text": "Visa Information",
87
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
88
+ },
89
+ {
90
+ "text": "3/31/25Your I-20 & Next Steps",
91
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
92
+ },
93
+ {
94
+ "text": "4/18/25Visa Information",
95
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
96
+ },
97
+ {
98
+ "text": "2/10/25Information Sessions",
99
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
100
+ },
101
+ {
102
+ "text": "2/10/25E-form Processing Times",
103
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Financial Documentation",
107
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
108
+ }
109
+ ],
110
+ "categories": [
111
+ "fees"
112
+ ],
113
+ "scraped_at": "2025-04-26T01:19:45.503936",
114
+ "path_hierarchy": [
115
+ "international-student-services",
116
+ "for-new-students",
117
+ "undergraduate-students.html"
118
+ ],
119
+ "domain": "www.buffalo.edu"
120
+ }
data/raw/0010_www_buffalo_edu.json ADDED
@@ -0,0 +1,126 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/for-new-students/graduate-students.html",
3
+ "title": "Graduate Students - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nWelcome graduate students! We're here to help guide you in getting started at UB.\nAttend our virtual [Pre-Arrival Information Live Events](/international-student-services/for-new-students/graduate-students/pre-arrival-information-sessions.html)!\nThis series of live events will help you successfully prepare to arrive, live and study at UB. Session recordings are posted on the series' page for your convenience.\nNew and transfer graduate international students should arrive by Sunday, August 17.\nWhat to do if [you can't arrive in Buffalo by the first day of class](/international-student-services/for-new-students/graduate-students/LateArrivalInformation.html).\nIf you arrive late, you still must complete your [International Student Check-in](/international-student-services/for-new-students/new-international-student-check-in.html). Don't forget to upload your I-94!",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Graduate Students"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "International Student Welcome"
13
+ },
14
+ {
15
+ "level": 3,
16
+ "text": "Are You Ready?"
17
+ },
18
+ {
19
+ "level": 4,
20
+ "text": "Pre-Arrival Live Events"
21
+ },
22
+ {
23
+ "level": 4,
24
+ "text": "Important Dates"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "When Should I Arrive?"
29
+ },
30
+ {
31
+ "level": 3,
32
+ "text": "ISS Check-in Required"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "New Students"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Activities"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Immigration & Visa"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Social Security Card & Income Tax"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Life in Buffalo"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "About Us"
57
+ },
58
+ {
59
+ "level": 1,
60
+ "text": "Your Privacy is Important To Us."
61
+ }
62
+ ],
63
+ "faqs": [],
64
+ "important_links": [
65
+ {
66
+ "text": "3/31/25Your I-20 & Next Steps",
67
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
68
+ },
69
+ {
70
+ "text": "4/18/25Visa Information",
71
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
72
+ },
73
+ {
74
+ "text": "2/10/25E-form Processing Times",
75
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
76
+ },
77
+ {
78
+ "text": "2/10/25Financial Documentation",
79
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
80
+ },
81
+ {
82
+ "text": "2/10/25Information Sessions",
83
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
84
+ },
85
+ {
86
+ "text": "Your I-20 & Next Steps",
87
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
88
+ },
89
+ {
90
+ "text": "Visa Information",
91
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
92
+ },
93
+ {
94
+ "text": "Pre-Arrival Information Live Events",
95
+ "url": "/international-student-services/for-new-students/graduate-students/pre-arrival-information-sessions.html"
96
+ },
97
+ {
98
+ "text": "3/31/25Your I-20 & Next Steps",
99
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
100
+ },
101
+ {
102
+ "text": "4/18/25Visa Information",
103
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Information Sessions",
107
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
108
+ },
109
+ {
110
+ "text": "2/10/25E-form Processing Times",
111
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
112
+ },
113
+ {
114
+ "text": "2/10/25Financial Documentation",
115
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
116
+ }
117
+ ],
118
+ "categories": [],
119
+ "scraped_at": "2025-04-26T01:19:48.073254",
120
+ "path_hierarchy": [
121
+ "international-student-services",
122
+ "for-new-students",
123
+ "graduate-students.html"
124
+ ],
125
+ "domain": "www.buffalo.edu"
126
+ }
data/raw/0011_www_buffalo_edu.json ADDED
@@ -0,0 +1,145 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/for-new-students/making-ub-your-home.html",
3
+ "title": "Making UB Your Home - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nDiscover everything that UB and Western New York have to offer.\nBefore arriving in Buffalo, you can experience UB and the beautiful Buffalo-Niagara region online.\nAfter you arrive in Buffalo, your best source of information will be the International Student Welcome Series. This program is designed to help you get the things you need to be a UB student, inform you about campus resources and services, get you off to a good start academically, introduce you to other new students, and provide valuable information about U.S. culture and life outside UB.\nBuffalo \u2014 dubbed the City of Good Neighbors \u2014 is the second-largest city in New York State, yet it\u2019s a big city with a hometown feel.\nBuffalo is a thriving city in a region of more than two million people that offers a world of opportunity. World-class art galleries and museums, a comprehensive city-wide system of parks and green space designed by renowned landscape architect Frederick Law Olmsted, and major and minor league sports teams are just a few of the wide array of cultural and recreational elements that make Buffalo such a great place to study, work, and live.\nBuffalo has four seasons, so you should be prepared for all types of weather (but remember, snow is fun and beautiful!). In winter, heavy jackets, warm hats, scarves, gloves and snow boots are necessary. During autumn and spring days, you will need a raincoat or lightweight coat or jacket. In the summer, shorts and T-shirts are adequate. Comfortable walking shoes are recommended for any season.\nUnless good quality winter clothing is available in your country, you should purchase it after you arrive in Buffalo. You will find a large selection of winter clothes available at different price levels.\nAt UB, it\u2019s easy to get around campus, between campuses, or anywhere you need to go.\nUB's international student clubs possess a wealth of information about academic programs, campus resources, social opportunities and life in Buffalo. While the clubs are all very different, they revolve around specific countries, cultures, languages and/or religions. It is easy to get involved with any club in which you have an interest\u2014regardless of your own affiliation. All you need is a desire to get involved and to learn. Be sure to contact your club or join a few!\nFor information about undergraduate international student clubs at UB, please visit the [UB Student Association Clubs web page.](https://www.sa.buffalo.edu/clubs)\nTo learn more about graduate international student clubs, please visit the UB [Graduate Student Association International Clubs web page](http://ubwp.buffalo.edu/gsa/clubs/international/).\nEducation in the United States relies on the expectation that students submit academic work that they have completed using only their own knowledge. Called \u201cacademic integrity,\u201d this expectation can be quite different from standards in other parts of the world.\nThe important thing to remember is that all students at UB are held accountable to upholding academic integrity rules, even if they do not know what those rules are. So please go to the [Office of Academic Integrity website](http://www.buffalo.edu/academic-integrity) to learn more about what is expected of you. Additionally, every instructor may set specific limits on how much students can work together, so always check your course syllabus and pay attention to assignment and exam instructions to ensure that you are following the proper standards.\nIf you ever have questions about what is allowed, ask your professor for clarification.\nF-1 international students are eligible to work on-campus without special authorization. J-1 international students are also eligible to work on-campus, but need a letter from International Student Services authorizing such employment.\nInternational students are not eligible to apply for \u201cWork Study\u201d positions. Work study is only available to domestic students who, as part of their financial aid package, are awarded funding from the U.S. federal government to work in paid campus positions while studying at the university.\nOnce you have activated your UBIT Account, you can start to search for on-campus jobs using UB Career Design Center's [Bullseye powered by Handshake](https://www.buffalo.edu/career/bullseye.html) job search engine.",
5
+ "headings": [
6
+ {
7
+ "level": 2,
8
+ "text": "Admissions FAQ"
9
+ },
10
+ {
11
+ "level": 1,
12
+ "text": "Making UB Your Home"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "On this page:"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Learn about UB and life in Buffalo"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Buffalo and Western New York"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "Buffalo's Four Seasons"
29
+ },
30
+ {
31
+ "level": 4,
32
+ "text": "What kind of clothes should I bring to Buffalo?"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Public Transportation in Buffalo"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "International Student Clubs"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Adapting to U.S. Academic Standards"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "On-Campus Employment"
49
+ },
50
+ {
51
+ "level": 3,
52
+ "text": "Finding an On-Campus Job"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "New Students"
57
+ },
58
+ {
59
+ "level": 2,
60
+ "text": "Activities"
61
+ },
62
+ {
63
+ "level": 2,
64
+ "text": "Immigration & Visa"
65
+ },
66
+ {
67
+ "level": 2,
68
+ "text": "Social Security Card & Income Tax"
69
+ },
70
+ {
71
+ "level": 2,
72
+ "text": "Life in Buffalo"
73
+ },
74
+ {
75
+ "level": 2,
76
+ "text": "About Us"
77
+ },
78
+ {
79
+ "level": 1,
80
+ "text": "Your Privacy is Important To Us."
81
+ }
82
+ ],
83
+ "faqs": [],
84
+ "important_links": [
85
+ {
86
+ "text": "3/31/25Your I-20 & Next Steps",
87
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
88
+ },
89
+ {
90
+ "text": "4/18/25Visa Information",
91
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
92
+ },
93
+ {
94
+ "text": "2/10/25E-form Processing Times",
95
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
96
+ },
97
+ {
98
+ "text": "2/10/25Financial Documentation",
99
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
100
+ },
101
+ {
102
+ "text": "2/10/25Information Sessions",
103
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
104
+ },
105
+ {
106
+ "text": "Your I-20 & Next Steps",
107
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
108
+ },
109
+ {
110
+ "text": "Visa Information",
111
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
112
+ },
113
+ {
114
+ "text": "3/31/25Your I-20 & Next Steps",
115
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
116
+ },
117
+ {
118
+ "text": "4/18/25Visa Information",
119
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
120
+ },
121
+ {
122
+ "text": "2/10/25Information Sessions",
123
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
124
+ },
125
+ {
126
+ "text": "2/10/25E-form Processing Times",
127
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
128
+ },
129
+ {
130
+ "text": "2/10/25Financial Documentation",
131
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
132
+ }
133
+ ],
134
+ "categories": [
135
+ "employment",
136
+ "fees"
137
+ ],
138
+ "scraped_at": "2025-04-26T01:19:50.965730",
139
+ "path_hierarchy": [
140
+ "international-student-services",
141
+ "for-new-students",
142
+ "making-ub-your-home.html"
143
+ ],
144
+ "domain": "www.buffalo.edu"
145
+ }
data/raw/0012_www_buffalo_edu.json ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/life-in-buffalo.html",
3
+ "title": "Life In Buffalo - International Student Services - University at Buffalo",
4
+ "content": "The Buffalo/Niagara region can become your new home. UB has many resources available to help you while you're here.\nThe information contained in this web site is provided as a service to the international students, faculty, staff, employees and administrators of the University at Buffalo, and does not constitute legal advice on any immigration, tax or other matter. We try to provide useful information, but we make no claims, promises or guarantees about the accuracy, completeness or adequacy of the information contained in or linked to this web site or any associated site. As legal advice must be tailored to the specific circumstances of each case, and laws are constantly changing, nothing provided herein should be used as a substitute for the advice of competent counsel. Neither the University at Buffalo nor the Office of International Student Services is responsible for any errors or omissions contained in this website, or for the results obtained from the use of this information.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Life In Buffalo"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Disclaimer"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "New Students"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Activities"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Immigration & Visa"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Social Security Card & Income Tax"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Life in Buffalo"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "About Us"
37
+ },
38
+ {
39
+ "level": 1,
40
+ "text": "Your Privacy is Important To Us."
41
+ }
42
+ ],
43
+ "faqs": [],
44
+ "important_links": [
45
+ {
46
+ "text": "3/31/25Your I-20 & Next Steps",
47
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
48
+ },
49
+ {
50
+ "text": "4/18/25Visa Information",
51
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
52
+ },
53
+ {
54
+ "text": "2/10/25E-form Processing Times",
55
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
56
+ },
57
+ {
58
+ "text": "2/10/25Financial Documentation",
59
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
60
+ },
61
+ {
62
+ "text": "2/10/25Information Sessions",
63
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
64
+ },
65
+ {
66
+ "text": "3/31/25Your I-20 & Next Steps",
67
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
68
+ },
69
+ {
70
+ "text": "4/18/25Visa Information",
71
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
72
+ },
73
+ {
74
+ "text": "2/10/25Information Sessions",
75
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
76
+ },
77
+ {
78
+ "text": "2/10/25E-form Processing Times",
79
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
80
+ },
81
+ {
82
+ "text": "2/10/25Financial Documentation",
83
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
84
+ }
85
+ ],
86
+ "categories": [
87
+ "immigration"
88
+ ],
89
+ "scraped_at": "2025-04-26T01:19:54.646783",
90
+ "path_hierarchy": [
91
+ "international-student-services",
92
+ "life-in-buffalo.html"
93
+ ],
94
+ "domain": "www.buffalo.edu"
95
+ }
data/raw/0013_www_buffalo_edu.json ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/life-in-buffalo/health-insurance.html",
3
+ "title": "Health Insurance - International Student Services - University at Buffalo",
4
+ "content": "Want an easy app with lots of helpful UB resources? Looking to connect with classmates and find study buddies? Navigate life as a UB student with the Navigate app.\nThe U.S. Department of State and the State University of New York (SUNY) require all J-1 Exchange Visitors and their dependents in the U.S. to have specific insurance coverage for the duration of their Exchange Visitor status.\nQuestions?\nWe encourage you to read the Student Health Insurance Office's website about health insurance.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Health Insurance"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Questions?"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "New Students"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Activities"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Immigration & Visa"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Social Security Card & Income Tax"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Life in Buffalo"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "About Us"
37
+ },
38
+ {
39
+ "level": 1,
40
+ "text": "Your Privacy is Important To Us."
41
+ }
42
+ ],
43
+ "faqs": [],
44
+ "important_links": [
45
+ {
46
+ "text": "3/31/25Your I-20 & Next Steps",
47
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
48
+ },
49
+ {
50
+ "text": "4/18/25Visa Information",
51
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
52
+ },
53
+ {
54
+ "text": "2/10/25E-form Processing Times",
55
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
56
+ },
57
+ {
58
+ "text": "2/10/25Financial Documentation",
59
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
60
+ },
61
+ {
62
+ "text": "2/10/25Information Sessions",
63
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
64
+ },
65
+ {
66
+ "text": "3/31/25Your I-20 & Next Steps",
67
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
68
+ },
69
+ {
70
+ "text": "4/18/25Visa Information",
71
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
72
+ },
73
+ {
74
+ "text": "2/10/25Information Sessions",
75
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
76
+ },
77
+ {
78
+ "text": "2/10/25E-form Processing Times",
79
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
80
+ },
81
+ {
82
+ "text": "2/10/25Financial Documentation",
83
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
84
+ }
85
+ ],
86
+ "categories": [],
87
+ "scraped_at": "2025-04-26T01:19:57.377061",
88
+ "path_hierarchy": [
89
+ "international-student-services",
90
+ "life-in-buffalo",
91
+ "health-insurance.html"
92
+ ],
93
+ "domain": "www.buffalo.edu"
94
+ }
data/raw/0014_www_buffalo_edu.json ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "http://www.buffalo.edu/studyabroad.html",
3
+ "title": "UB Education Abroad - University at Buffalo",
4
+ "content": "UB Education Abroad - University at Buffalo\n\nInterested in meeting with an advisor about studying abroad?\nStop by our office during our drop-in advising hours! Monday-Friday, 11am-3pm. View our Programs! Choosing a Program UB Program Search SUNY Program Search Costs & Scholarships",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Education Abroad"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Get Started"
13
+ },
14
+ {
15
+ "level": 1,
16
+ "text": "Your Privacy is Important To Us."
17
+ }
18
+ ],
19
+ "faqs": [],
20
+ "important_links": [
21
+ {
22
+ "text": "5/21/24What Does an Application Look Like?",
23
+ "url": "/educationabroad/projects/application.html"
24
+ },
25
+ {
26
+ "text": "11/5/24Study Abroad Course Planning Form (UB programs only)",
27
+ "url": "/educationabroad/projects/study-abroad-course-planning-form.html"
28
+ },
29
+ {
30
+ "text": "5/21/24Information for Faculty and Staff",
31
+ "url": "/educationabroad/information-for-faculty-staff.html"
32
+ }
33
+ ],
34
+ "categories": [],
35
+ "scraped_at": "2025-04-26T01:20:00.701577",
36
+ "path_hierarchy": [
37
+ "studyabroad.html"
38
+ ],
39
+ "domain": "www.buffalo.edu"
40
+ }
data/raw/0015_www_buffalo_edu.json ADDED
@@ -0,0 +1,119 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa.html",
3
+ "title": "Immigration & Visa - International Student Services - University at Buffalo",
4
+ "content": "Here you will find out what you need to do to maintain your immigration status and how to obtain the immigration benefits for which you are eligible.\nThe information contained in this web site is provided as a service to the international students, faculty, staff, employees and administrators of the University at Buffalo, and does not constitute legal advice on any immigration, tax or other matter. We try to provide useful information, but we make no claims, promises or guarantees about the accuracy, completeness or adequacy of the information contained in or linked to this web site or any associated site. As legal advice must be tailored to the specific circumstances of each case, and laws are constantly changing, nothing provided herein should be used as a substitute for the advice of competent counsel. Neither the University at Buffalo nor the Office of International Student Services is responsible for any errors or omissions contained in this website, or for the results obtained from the use of this information.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Immigration & Visa"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Disclaimer"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Drop In Advising"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Upcoming Events"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "New Students"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Activities"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Immigration & Visa"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Social Security Card & Income Tax"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Life in Buffalo"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "About Us"
45
+ },
46
+ {
47
+ "level": 1,
48
+ "text": "Your Privacy is Important To Us."
49
+ }
50
+ ],
51
+ "faqs": [],
52
+ "important_links": [
53
+ {
54
+ "text": "3/31/25Your I-20 & Next Steps",
55
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
56
+ },
57
+ {
58
+ "text": "4/18/25Visa Information",
59
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
60
+ },
61
+ {
62
+ "text": "2/10/25E-form Processing Times",
63
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
64
+ },
65
+ {
66
+ "text": "2/10/25Financial Documentation",
67
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
68
+ },
69
+ {
70
+ "text": "2/10/25Information Sessions",
71
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
72
+ },
73
+ {
74
+ "text": "E-form Processing Times",
75
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
76
+ },
77
+ {
78
+ "text": "Financial Documentation",
79
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
80
+ },
81
+ {
82
+ "text": "E-form Processing Times2/10/25",
83
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
84
+ },
85
+ {
86
+ "text": "Financial Documentation2/10/25",
87
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
88
+ },
89
+ {
90
+ "text": "3/31/25Your I-20 & Next Steps",
91
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
92
+ },
93
+ {
94
+ "text": "4/18/25Visa Information",
95
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
96
+ },
97
+ {
98
+ "text": "2/10/25Information Sessions",
99
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
100
+ },
101
+ {
102
+ "text": "2/10/25E-form Processing Times",
103
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Financial Documentation",
107
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
108
+ }
109
+ ],
110
+ "categories": [
111
+ "immigration"
112
+ ],
113
+ "scraped_at": "2025-04-26T01:20:03.516633",
114
+ "path_hierarchy": [
115
+ "international-student-services",
116
+ "immigration-visa.html"
117
+ ],
118
+ "domain": "www.buffalo.edu"
119
+ }
data/raw/0016_www_buffalo_edu.json ADDED
@@ -0,0 +1,128 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/f-1-student.html",
3
+ "title": "F-1 Student - International Student Services - University at Buffalo",
4
+ "content": "Being in F-1 student status means that your primary purpose for being in the U.S. is to study.\nThe information contained in this web site is provided as a service to the international students, faculty, staff, employees and administrators of the University at Buffalo, and does not constitute legal advice on any immigration, tax or other matter. We try to provide useful information, but we make no claims, promises or guarantees about the accuracy, completeness or adequacy of the information contained in or linked to this web site or any associated site. As legal advice must be tailored to the specific circumstances of each case, and laws are constantly changing, nothing provided herein should be used as a substitute for the advice of competent counsel. Neither the University at Buffalo nor the Office of International Student Services is responsible for any errors or omissions contained in this website, or for the results obtained from the use of this information.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "F-1 Student"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Disclaimer"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "New Students"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Activities"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Immigration & Visa"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Social Security Card & Income Tax"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Life in Buffalo"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "About Us"
37
+ },
38
+ {
39
+ "level": 1,
40
+ "text": "Your Privacy is Important To Us."
41
+ }
42
+ ],
43
+ "faqs": [],
44
+ "important_links": [
45
+ {
46
+ "text": "3/31/25Your I-20 & Next Steps",
47
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
48
+ },
49
+ {
50
+ "text": "4/18/25Visa Information",
51
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
52
+ },
53
+ {
54
+ "text": "2/10/25E-form Processing Times",
55
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
56
+ },
57
+ {
58
+ "text": "2/10/25Financial Documentation",
59
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
60
+ },
61
+ {
62
+ "text": "2/10/25Information Sessions",
63
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
64
+ },
65
+ {
66
+ "text": "Immigration Documents",
67
+ "url": "/international-student-services/immigration-visa/f-1-student/immigration-documents.html"
68
+ },
69
+ {
70
+ "text": "Curricular Practical Training (CPT)",
71
+ "url": "/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html"
72
+ },
73
+ {
74
+ "text": "Optional Practical Training (OPT)",
75
+ "url": "/international-student-services/immigration-visa/f-1-student/optional-practical-training--opt-.html"
76
+ },
77
+ {
78
+ "text": "E-form Processing Times",
79
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
80
+ },
81
+ {
82
+ "text": "Financial Documentation",
83
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
84
+ },
85
+ {
86
+ "text": "Immigration Documents1/16/25",
87
+ "url": "/international-student-services/immigration-visa/f-1-student/immigration-documents.html"
88
+ },
89
+ {
90
+ "text": "Curricular Practical Training (CPT)4/5/25",
91
+ "url": "/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html"
92
+ },
93
+ {
94
+ "text": "Optional Practical Training (OPT)2/22/24",
95
+ "url": "/international-student-services/immigration-visa/f-1-student/optional-practical-training--opt-.html"
96
+ },
97
+ {
98
+ "text": "3/31/25Your I-20 & Next Steps",
99
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
100
+ },
101
+ {
102
+ "text": "4/18/25Visa Information",
103
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Information Sessions",
107
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
108
+ },
109
+ {
110
+ "text": "2/10/25E-form Processing Times",
111
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
112
+ },
113
+ {
114
+ "text": "2/10/25Financial Documentation",
115
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
116
+ }
117
+ ],
118
+ "categories": [
119
+ "immigration"
120
+ ],
121
+ "scraped_at": "2025-04-26T01:20:05.802261",
122
+ "path_hierarchy": [
123
+ "international-student-services",
124
+ "immigration-visa",
125
+ "f-1-student.html"
126
+ ],
127
+ "domain": "www.buffalo.edu"
128
+ }
data/raw/0017_www_buffalo_edu.json ADDED
@@ -0,0 +1,121 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/j-1-student1.html",
3
+ "title": "J-1 Student - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nThe J-1 Exchange Visitor Program enables foreign nationals to come to the U.S. to study, research, train, and more. The purpose of the program is to enhance skills, expand knowledge, and promote international exchange. Program length varies from a few weeks to several years.\nThe purpose of the J-1 Degree-Seeking Category is to complete a full-time academic degree-seeking program at the University at Buffalo.\nThe purpose of the J-1 Exchange Student Category is to complete a full-time course of study at the University at Buffalo as a part of a formal reciprocal agreement between the student's home university and the University at Buffalo.\nThe purpose of the J-1 Student Intern category is to participate in a U.S. internship that will fulfill the educational objectives for their current degree program at an academic institution outside the U.S. The internship must consist of a minimum of 32 hours of work per week.\nThe purpose of the J-1 Student Non-Degree category is to participate in prescribed course of study at the University at Buffalo. The prescribed course of study should be equivalent to a full-time workload.\n*Program pre-approval by ISS is required before students can be invited to participate in this category.\nIf you apply for a waiver of the Two-Year Home Country Physical Presence Requirement (INA 212e), and your waiver is recommended in writing by the U.S. Department of State (\u201cNo Objection Statement\u201d) or you receive Form I-612 from U.S. Citizenship and Immigration Services, you are no longer eligible for any J-1 benefits (DS-2019 Extension, Academic Training, SEVIS Transfer, etc.). Therefore, please consult with ISS before applying for the waiver.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "J-1 Student"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "J-1 Student Visa Options at UB"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Information for all J-1 Student Categories"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Disclaimer"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "New Students"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Activities"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Immigration & Visa"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Social Security Card & Income Tax"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Life in Buffalo"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "About Us"
45
+ },
46
+ {
47
+ "level": 1,
48
+ "text": "Your Privacy is Important To Us."
49
+ }
50
+ ],
51
+ "faqs": [],
52
+ "important_links": [
53
+ {
54
+ "text": "3/31/25Your I-20 & Next Steps",
55
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
56
+ },
57
+ {
58
+ "text": "4/18/25Visa Information",
59
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
60
+ },
61
+ {
62
+ "text": "2/10/25E-form Processing Times",
63
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
64
+ },
65
+ {
66
+ "text": "2/10/25Financial Documentation",
67
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
68
+ },
69
+ {
70
+ "text": "2/10/25Information Sessions",
71
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
72
+ },
73
+ {
74
+ "text": "E-form Processing Times",
75
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
76
+ },
77
+ {
78
+ "text": "Financial Documentation",
79
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
80
+ },
81
+ {
82
+ "text": "J-1 Student Visa Options at UB",
83
+ "url": "#title_2135517390"
84
+ },
85
+ {
86
+ "text": "Information for all J-1 Student Categories",
87
+ "url": "#title_2135517390_cop"
88
+ },
89
+ {
90
+ "text": "3/31/25Your I-20 & Next Steps",
91
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
92
+ },
93
+ {
94
+ "text": "4/18/25Visa Information",
95
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
96
+ },
97
+ {
98
+ "text": "2/10/25Information Sessions",
99
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
100
+ },
101
+ {
102
+ "text": "2/10/25E-form Processing Times",
103
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Financial Documentation",
107
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
108
+ }
109
+ ],
110
+ "categories": [
111
+ "immigration",
112
+ "employment"
113
+ ],
114
+ "scraped_at": "2025-04-26T01:20:08.299359",
115
+ "path_hierarchy": [
116
+ "international-student-services",
117
+ "immigration-visa",
118
+ "j-1-student1.html"
119
+ ],
120
+ "domain": "www.buffalo.edu"
121
+ }
data/raw/0018_www_buffalo_edu.json ADDED
@@ -0,0 +1,206 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/us-visa.html",
3
+ "title": "U.S. Visa - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nHere you will find information about applying for non-immigrant U.S. visas for international students.\nA non-immigrant U.S. visa is an entry permit for individuals coming to the U.S. temporarily for specific purposes such as study or work. It is issued by the U.S. Department of State and is stamped in your passport. It allows you to request permission to enter the U.S. at a U.S. Port of Entry.\nA visa alone does not guarantee entry into the U.S. You must also carry your other documents, including valid passport, and valid I-20, DS-2019 or I-797 Approval Notice.\nIf you have a valid F-1 visa stamp in your passport, you may be able to use that stamp to re-enter the United States. You are encouraged to contact the closest U.S. embassy or consulate in your home country to inquire as to whether or not you may use a visa stamp associated with your previous SEVIS record with a new document to enter the United States. Please note that Customs and Border Protection makes the final decision on your eligibility to enter the U.S. and can deny entry.\nAll applicants for F or J visas are required to demonstrate their intent to return to their home country following the completion of their studies or scholarly activities. There are several ways you can demonstrate your intent to return home:\nFor additional information about applying for an F-1 or J-1 visa, please visit the Department of State website.\nYou must obtain a U.S. visa at a U.S. Embassy or Consulate outside the U.S.\nWhile it is always recommended that you apply for a U.S. visa in your home country, some people apply in Canada. For information on applying for a U.S. visa in Canada, please refer to the U.S. Embassy and Consulates in Canada's website.\nIf you decide to apply for your U.S. Visa in Canada, please note that you may have to wait in Canada while your visa application is pending. In addition, if your application is denied, you will not be able to return to the U.S.\nJune, July, and August are the busiest months in most U.S. Consulates so interview appointments may be difficult to obtain during that period.\nDue to background checks, mandatory visa interviews and increased scrutiny of individuals studying or doing research in \u201csensitive fields,\u201d you should be prepared for delays in the processing of your visa application. If your field of study or research is in a sensitive field, you should obtain a letter from your professor explaining the nature of your studies or research. This letter should be written in simple language so it can be easily understood by non-specialists.\nAlso, if you violated your previous immigration status, have applied for Lawful Permanent Residence in the U.S. or have a criminal record, your application for a new visa will be subject to additional scrutiny or denial.\nThe U.S. Department of State website lists the forms, documents, etc. which are required for the U.S. visa application. It is important that you bring everything to your visa interview to avoid needless delays in the processing of your application.\nComplete the Online Nonimmigrant Visa Application (Form DS-160). When you upload your photo, be sure it conforms to the Photograph Requirements. Print the application confirmation page for your interview.\nIf you're not sure who to put as your contact? UB students can use ISS's information:\nISS cannot answer this question for you. We recommend you use your best estimate on the time you need to complete your program. You can contact your academic department for an estimate if you are not sure.\nYour answer to this question does not determine the [length of your visa](https://travel.state.gov/content/travel/en/us-visas/Visa-Reciprocity-and-Civil-Documents-by-Country.html).\nISS cannot provide detailed guidance on completing your DS-160. If you have questions we recommend contacting your local embassy or consulate for assistance.\nPay the nonrefundable Visa Application (MRV) Fee. Note: When your visa is issued, you may also be required to pay the Reciprocal Visa Issuance Fee. Check the Visa Reciprocity Table to see if you are required to pay this fee.\n(If required) Pay the SEVIS I-901 Fee online, by mail or by Western Union. If you already paid the SEVIS Fee and don't know if you need to pay it again, please read SEVIS Fee (for F-1 students), SEVIS Fee (for J-1 students and scholars) or SEVIS I-901 Fee. For additional information, read SEVIS I-901 Fee Frequently Asked Questions.\nPlease refer to the list of documents above for U.S. visa applications. In addition to these documents, you should bring your UB transcripts. We also recommend that you print out an Enrollment Verification Certificate from the HUB Student Center for additional verification of your full-time student status.\nIf you have been out of the U.S. for more than 5 months, you may need to pay the SEVIS fee again. Please review the SEVIS I-901 Fee and SEVIS I-901 Fee FAQ links below to determine whether or not you are required to pay the SEVIS fee.\nFor additional requirements, please contact the U.S. Consulate or Embassy where you will apply for your visa.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "U.S. Visa"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Visa Links"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "What is a Non-Immigrant U.S. Visa?"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "Non-Immigrant Intent"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Where to Get a U.S. Visa"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Applying in Canada"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Processing Times"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Application Process"
37
+ },
38
+ {
39
+ "level": 3,
40
+ "text": "Documents Needed for F-1 Student Visa or J-1 Student Visa Applications"
41
+ },
42
+ {
43
+ "level": 3,
44
+ "text": "How Do I Apply for an F-1 Student Visa or J-1 Student Visa?"
45
+ },
46
+ {
47
+ "level": 4,
48
+ "text": "Step 1."
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Tips for Your DS-160"
53
+ },
54
+ {
55
+ "level": 3,
56
+ "text": "U.S. Point of Contact"
57
+ },
58
+ {
59
+ "level": 3,
60
+ "text": "Intended Length of Stay"
61
+ },
62
+ {
63
+ "level": 4,
64
+ "text": "Step 2."
65
+ },
66
+ {
67
+ "level": 4,
68
+ "text": "Step 3."
69
+ },
70
+ {
71
+ "level": 2,
72
+ "text": "What Should I Bring to My Visa Interview?"
73
+ },
74
+ {
75
+ "level": 2,
76
+ "text": "Renewing a U.S. Student Visa"
77
+ },
78
+ {
79
+ "level": 2,
80
+ "text": "New Students"
81
+ },
82
+ {
83
+ "level": 2,
84
+ "text": "Activities"
85
+ },
86
+ {
87
+ "level": 2,
88
+ "text": "Immigration & Visa"
89
+ },
90
+ {
91
+ "level": 2,
92
+ "text": "Social Security Card & Income Tax"
93
+ },
94
+ {
95
+ "level": 2,
96
+ "text": "Life in Buffalo"
97
+ },
98
+ {
99
+ "level": 2,
100
+ "text": "About Us"
101
+ },
102
+ {
103
+ "level": 1,
104
+ "text": "Your Privacy is Important To Us."
105
+ }
106
+ ],
107
+ "faqs": [],
108
+ "important_links": [
109
+ {
110
+ "text": "3/31/25Your I-20 & Next Steps",
111
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
112
+ },
113
+ {
114
+ "text": "4/18/25Visa Information",
115
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
116
+ },
117
+ {
118
+ "text": "2/10/25E-form Processing Times",
119
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
120
+ },
121
+ {
122
+ "text": "2/10/25Financial Documentation",
123
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
124
+ },
125
+ {
126
+ "text": "2/10/25Information Sessions",
127
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
128
+ },
129
+ {
130
+ "text": "E-form Processing Times",
131
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
132
+ },
133
+ {
134
+ "text": "Financial Documentation",
135
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
136
+ },
137
+ {
138
+ "text": "application instructions",
139
+ "url": "https://travel.state.gov/content/travel/en/us-visas/visa-information-resources/forms/ds-160-online-nonimmigrant-visa-application.html"
140
+ },
141
+ {
142
+ "text": "Application Process",
143
+ "url": "#title_1458022789_cop"
144
+ },
145
+ {
146
+ "text": "Online Nonimmigrant Visa Application",
147
+ "url": "https://ceac.state.gov/genniv/"
148
+ },
149
+ {
150
+ "text": "Learn more about the application",
151
+ "url": "https://travel.state.gov/content/travel/en/us-visas/visa-information-resources/forms/ds-160-online-nonimmigrant-visa-application.html"
152
+ },
153
+ {
154
+ "text": "Visa Application (MRV) Fee",
155
+ "url": "https://travel.state.gov/content/travel/en/us-visas/visa-information-resources/fees/fees-visa-services.html"
156
+ },
157
+ {
158
+ "text": "F-1 SEVIS Fee Information",
159
+ "url": "/international-student-services/immigration-visa/f-1-student/sevis-fee.html"
160
+ },
161
+ {
162
+ "text": "J-1 SEVIS Fee Information",
163
+ "url": "/international-student-services/immigration-visa/j-1-student1/sevis-fee.html"
164
+ },
165
+ {
166
+ "text": "SEVIS I-901 Fee Information",
167
+ "url": "http://studyinthestates.dhs.gov/students/sevis-i-901-fee"
168
+ },
169
+ {
170
+ "text": "SEVIS I-901 Fee Information",
171
+ "url": "http://studyinthestates.dhs.gov/students/sevis-i-901-fee"
172
+ },
173
+ {
174
+ "text": "3/31/25Your I-20 & Next Steps",
175
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
176
+ },
177
+ {
178
+ "text": "4/18/25Visa Information",
179
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
180
+ },
181
+ {
182
+ "text": "2/10/25Information Sessions",
183
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
184
+ },
185
+ {
186
+ "text": "2/10/25E-form Processing Times",
187
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
188
+ },
189
+ {
190
+ "text": "2/10/25Financial Documentation",
191
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
192
+ }
193
+ ],
194
+ "categories": [
195
+ "immigration",
196
+ "employment",
197
+ "fees"
198
+ ],
199
+ "scraped_at": "2025-04-26T01:20:15.761046",
200
+ "path_hierarchy": [
201
+ "international-student-services",
202
+ "immigration-visa",
203
+ "us-visa.html"
204
+ ],
205
+ "domain": "www.buffalo.edu"
206
+ }
data/raw/0019_www_buffalo_edu.json ADDED
@@ -0,0 +1,221 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/travel.html",
3
+ "title": "Travel - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nLearn about what documents to carry and other frequently asked questions for international student travel.\nWe strongly recommend that you review this additional information on [travel while on OPT](/international-student-services/immigration-visa/travel/on-opt.html) for more specific considerations such as travel with a pending OPT, applying for a visa, unemployment, Cap Gap situations and more.\nIf you are approved for post-completion Academic Training, in addition to the above required documents, we recommend that you carry a letter from your employer verifying your academic training employment.\nCanada has its own immigration rules and requirements. Many students will need a [Canadian Visa](https://www.canada.ca/en/immigration-refugees-citizenship/services/visit-canada/about-visitor-visa.html) before traveling to Canada. We encourage you to review our [travel to Canada](/international-student-services/immigration-visa/travel/outside-the-us.html) information before planning your trip.\nUpon arrival at a U.S. international airport, seaport, or land border crossing, all persons, including U.S. citizens, are subject to inspection by U.S. Customs and Border Protection (CBP). Anyone seeking to lawfully enter the U.S. must establish their admissibility to the satisfaction of the CBP officer.\nYou must present your passport, visa, and other supporting documents. The CBP officer will review your travel documents to confirm your identity and nationality, and ask questions about your visit to the U.S. Most nonimmigrants will have their digital finger prints and photograph taken. If you are determined admissible, the CBP officer may place an admission stamp in your passport, specifying the date of entry, the visa class, and the duration of admission and will issue an electronic I-94.\nFor most travelers, the screening process takes no more than a few minutes.\nIf the travel endorsement signature on your I-20 (page 2) or DS-2019 (bottom right, page 1) has expired please complete the appropriate Travel Endorsement/Travel Validation Request eform in [UB Global](https://ubisss.buffalo.edu/istart/controllers/start/StartEngine.cfm).\nIf you lost your I-20, please complete the I-20/DS-2019 Reprint Request eform found in [UB Global](https://ubisss.buffalo.edu/istart/controllers/start/StartEngine.cfm). Check our [e-form processing page](/international-student-services/immigration-visa/e-form-processing-times.html) for current processing times. Once approved we will send you a new I-20 with a new travel signature.\nIf there is not enough time before your flight or trip to Canada to receive the updated I-20 we recommend that you change your flight date/travel plans to allow time for ISS to get a new I-20 to you. If that is not possible, you can choose to attempt to enter the U.S. without a valid travel signature, however, this is risky and not recommended. U.S. Customs and Border Protection (CBP) officers may deny entry into the United States if:\nCBP officers can also decide to permit your entry to the U.S. by issuing an I-515A. Please read the information below about I-515As. Again, our strong recommendation is that you prepare ahead of time and receive a travel endorsement before your planned re-entry to the U.S.\nRather than deny your entry to the U.S., the CBP officer has the discretion to issue you a [Form I-515A](https://studyinthestates.dhs.gov/students/form-i-515a-overview). This document allows you to enter the U.S. and remain in the U.S. for 30 days. To remain in the U.S. beyond 30 days, and to maintain your F-1/J-1 status, you must submit required documents to SEVP within 30 days of arriving in the U.S. It is extremely important that you contact ISS for advise on completing the I-515. In many cases we must issue a new I-20/DS-2019 before you can submit the documents to SEVP.\nIf you fail to complete any required actions or send all of the required documents to SEVP within 30 days of entering the U.S., your SEVIS record and I-20 may be terminated. If your SEVIS record and I-20 are terminated, you will be required to leave the U.S. immediately or file for Reinstatement to F-1 status with USCIS, if eligible.\nIf your passport is lost or stolen, either in the U.S. or while traveling, you must first contact the embassy or consulate of your own country to get instructions on how to obtain a new passport. If you were outside the U.S. when your passport was stolen or lost, you must contact a U.S. embassy/consulate to make an appointment to apply for a new F-1 or J-1 visa before you can return to the U.S. If your passport was stolen or lost inside the U.S., a new visa is not immediately required. You will need a new visa the next time you plan to enter the U.S., so please plan accordingly.\nIf your Form I-20 or DS-2019 have also been stolen or lost, you can request new documents by submitting a I-20/DS-2019 Re-print Request in [UB Global](https://ubisss.buffalo.edu/).\nYou must have a valid F-1 or J-1 visa and a valid passport in order to reenter the U.S.\nMost UB students will clear U.S. immigration after your documents are reviewed by a CBP officer. However, a few may be referred to another officer to verify your student status or for additional questioning. This is referred to as \u201c[secondary inspection](https://studyinthestates.dhs.gov/what-is-secondary-inspection)\u201d.\nAlthough a referral to secondary inspection can be intimidating and make you feel anxious, there is usually little cause for alarm. Be aware that it can take a few hours to complete this inspection process.\nIf the CBP officer has questions that can be answered by ISS, ask the officer if they would like to call ISS for confirmation. During office hours, CBP can reach us at our general office number, (716) 645-2258.\nIf you are regularly sent to secondary inspection, please contact ISS for advice.\nPuerto Rico and the United States Virgin Islands are part of the United States. You should carry your valid passport and valid immigration documents when you travel there, as you should with any travel in the United States. However, if you go from Puerto Rico or the United States Virgin Islands to other islands, then you are leaving the United States and will need to formally re-enter and a valid visa will be required, unless you qualify for Automatic Revalidation.\nIf they are not eligible for the [visa waiver program](https://www.cbp.gov/travel/international-visitors/esta) (ESTA), they may apply for the [B-2 Visitor Visa](https://travel.state.gov/content/travel/en/us-visas/tourism-visit/visitor.html).\nFor a list of additional documents required for a B-2 visa application, please check the Consulate website where they will apply. Generally, it is recommended to provide your visitors with copies of your immigration documents (I-20, I-94, F-1 Visa Stamp) and a copy of your enrollment verification or transcript from the [Registrar office](https://www.buffalo.edu/registrar). It is also important that they show sufficient funds to cover any expenses during their trip to the U.S.",
5
+ "headings": [
6
+ {
7
+ "level": 2,
8
+ "text": "Drop In Advising"
9
+ },
10
+ {
11
+ "level": 1,
12
+ "text": "F-1 & J-1 Travel"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Documents Needed For Travel"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "Click on the section below that applies to you to learn more"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "F-1 Enrolled Student"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "F-1 Student on OPT"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "F-2 Dependent"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "J-1 Enrolled Students & those on Academic Training"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "J-2 Dependent"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Important Travel Considerations and Frequently Asked Questions"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "I want to travel to Canada, what do I need to know?"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "What should I expect at the Port of Entry?"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "I forgot to get a travel signature or I forgot/lost my I-20/DS-2019. What should I do?"
57
+ },
58
+ {
59
+ "level": 2,
60
+ "text": "I forgot to get a travel signature or I forgot/lost my I-20/DS-2019. The CBP officer gave me an I-515A. What should I do?"
61
+ },
62
+ {
63
+ "level": 2,
64
+ "text": "My passport was stolen or is lost, what should I do?"
65
+ },
66
+ {
67
+ "level": 2,
68
+ "text": "When I entered the U.S., the Border official sent me to secondary inspection. Why did that happen?"
69
+ },
70
+ {
71
+ "level": 2,
72
+ "text": "Do I need a valid visa to visit Puerto Rico, or the U.S. Virgin Islands or the Northern Mariana Islands?"
73
+ },
74
+ {
75
+ "level": 2,
76
+ "text": "I want my family to visit me in the U.S. What do they need?"
77
+ },
78
+ {
79
+ "level": 2,
80
+ "text": "Looking for more information?"
81
+ },
82
+ {
83
+ "level": 2,
84
+ "text": "Disclaimer"
85
+ },
86
+ {
87
+ "level": 2,
88
+ "text": "New Students"
89
+ },
90
+ {
91
+ "level": 2,
92
+ "text": "Activities"
93
+ },
94
+ {
95
+ "level": 2,
96
+ "text": "Immigration & Visa"
97
+ },
98
+ {
99
+ "level": 2,
100
+ "text": "Social Security Card & Income Tax"
101
+ },
102
+ {
103
+ "level": 2,
104
+ "text": "Life in Buffalo"
105
+ },
106
+ {
107
+ "level": 2,
108
+ "text": "About Us"
109
+ },
110
+ {
111
+ "level": 1,
112
+ "text": "Your Privacy is Important To Us."
113
+ }
114
+ ],
115
+ "faqs": [],
116
+ "important_links": [
117
+ {
118
+ "text": "3/31/25Your I-20 & Next Steps",
119
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
120
+ },
121
+ {
122
+ "text": "4/18/25Visa Information",
123
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
124
+ },
125
+ {
126
+ "text": "2/10/25E-form Processing Times",
127
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
128
+ },
129
+ {
130
+ "text": "2/10/25Financial Documentation",
131
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
132
+ },
133
+ {
134
+ "text": "2/10/25Information Sessions",
135
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
136
+ },
137
+ {
138
+ "text": "Travel Endorsement Information",
139
+ "url": "/international-student-services/immigration-visa/travel/travel-endorsement-information.html"
140
+ },
141
+ {
142
+ "text": "While on Optional Practical Training (OPT)",
143
+ "url": "/international-student-services/immigration-visa/travel/on-opt.html"
144
+ },
145
+ {
146
+ "text": "E-form Processing Times",
147
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
148
+ },
149
+ {
150
+ "text": "Financial Documentation",
151
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
152
+ },
153
+ {
154
+ "text": "Documents Needed For Travel",
155
+ "url": "#title_1346824965"
156
+ },
157
+ {
158
+ "text": "Looking for more information?",
159
+ "url": "#title_1318488101"
160
+ },
161
+ {
162
+ "text": "Maintaining status on Post-OPT",
163
+ "url": "http://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/optional-practical-training--opt-/maintaining-status-during-post-completion-opt.html"
164
+ },
165
+ {
166
+ "text": "Maintaining Status on STEM OPT",
167
+ "url": "http://www.buffalo.edu/international-student-services/immigration-visa/f-1-student/optional-practical-training--opt-/maintaining-status-while-on-opt.html"
168
+ },
169
+ {
170
+ "text": "travel while on OPT",
171
+ "url": "/international-student-services/immigration-visa/travel/on-opt.html"
172
+ },
173
+ {
174
+ "text": "e-form processing page",
175
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
176
+ },
177
+ {
178
+ "text": "Form I-515A",
179
+ "url": "https://studyinthestates.dhs.gov/students/form-i-515a-overview"
180
+ },
181
+ {
182
+ "text": "2/3/25Travel Endorsement Information",
183
+ "url": "/international-student-services/immigration-visa/travel/travel-endorsement-information.html"
184
+ },
185
+ {
186
+ "text": "8/12/24While on Optional Practical Training (OPT)",
187
+ "url": "/international-student-services/immigration-visa/travel/on-opt.html"
188
+ },
189
+ {
190
+ "text": "3/31/25Your I-20 & Next Steps",
191
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
192
+ },
193
+ {
194
+ "text": "4/18/25Visa Information",
195
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
196
+ },
197
+ {
198
+ "text": "2/10/25Information Sessions",
199
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
200
+ },
201
+ {
202
+ "text": "2/10/25E-form Processing Times",
203
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
204
+ },
205
+ {
206
+ "text": "2/10/25Financial Documentation",
207
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
208
+ }
209
+ ],
210
+ "categories": [
211
+ "immigration",
212
+ "employment"
213
+ ],
214
+ "scraped_at": "2025-04-26T01:20:19.426179",
215
+ "path_hierarchy": [
216
+ "international-student-services",
217
+ "immigration-visa",
218
+ "travel.html"
219
+ ],
220
+ "domain": "www.buffalo.edu"
221
+ }
data/raw/0020_www_buffalo_edu.json ADDED
@@ -0,0 +1,141 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/e-form-processing-times.html",
3
+ "title": "E-form Processing Times - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nISS provides important e-form services to thousands of F and J students through UB Global. ISS prioritizes e-form requests based on timing of submission and order of processing priority for the office.\nProcessing times are updated as needed based on the volume of requests and may vary. This means that two requests submitted on the same date may be processed on different dates.\nPlease find current estimated processing times measured in business days for ISS e-forms below. Please note the 1st business day is the first full day immediately following the submission of the e-form. Business days are Monday, Tuesday, Wednesday, Thursday, Friday. University holidays are not considered business days.\n| E-form Title | Estimated Processing in Business Days |\n|---|---|\n| Academic Reduced Course Load | 7-10 |\n| Adding an F-2 Dependent Step 1 | 3 |\n| Adding an F-2 Dependent Step 2 | 7-10 |\n| Curricular Practical Training | 12-15 |\n| CPT Extension Requests* | 10 |\n| F-1 CPT Pharm D IPPE/APPE Rotation | 12-15 |\n| Final Semester Reduced Course Load | 7-10 |\n| General Document Upload | 5-7 |\n| Graduate Leave of Absence | 5-7 |\n| I-20 Extension of Stay | 12-15 |\n| I-20 Reprint | 7-10 |\n| Initial Status I-20 Request | 12-15 |\n| Medical Reduced Course Load | 7-10 |\n| Request to End F-1 Status | 5-7 |\n| SEVIS Transfer Request | 5-7 |\n| Social Security DSO Letter Request | 5-7 |\n| Travel Endorsement Request | 7-10 |\n| Undergraduate Leave of Absence | 5-7 |\n*CPT extension requests are currently accepted as emails from the academic department confirming they support the extension of the current CPT through a specific date ([within acceptable dates as listed on our CPT page)](/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html) and explaining the academic necessity for the work authorization extension.\n| E-form Title | Estimated Processing in Business Days |\n|---|---|\n| Add New STEM Employment | 7-10 |\n| Change of Employer While STEM Extension is Pending | 7-10 |\n| Edit STEM Employment | 7-10 |\n| I-20 Reprint Request - OPT | 7-10 |\n| OPT Employment Reporting: SEVP Portal Issue | 7-10 |\n| OPT Travel Endorsement Request | 7-10 |\n| Post-Completion OPT I-20 Request | 12-15 |\n| Pre-Completion OPT I-20 Request | 12-15 |\n| Request for Cap Gap Extension I-20 | 12-15 |\n| SEVP Portal Unlock Request | 1-3 |\n| STEM Extension I-20 Request | 12-15 |\n| STEM OPT Reporting | 5-7 |\n| E-form Title | Estimated Processing in Business Days |\n|---|---|\n| Academic Reduced Course Load | 7-10 |\n| Academic Training Application | 7-10 |\n| Academic Training Evaluation | 7-10 |\n| Change of Status Notification | 7-10 |\n| Departure from UB | 7-10 |\n| DS-2019 Extension of Stay Step 1 | 1-3 |\n| DS-2019 Extension of Stay Step 2 | 12-15 |\n| DS-2019 Reprint Request | 7-10 |\n| Final Semester Reduced Course Load | 7-10 |\n| General Document Upload | 5-7 |\n| Medical Reduced Course Load | 7-10 |\n| On-Campus Work Authorization Letter Request | 5-7 |\n| Social Security ARO Letter Request | 5-7 |\n| Travel Validation Request | 7-10 |\n| E-form Title | Estimated Processing in Business Days |\n|---|---|\n| Change of Plans | 5-7 |\n| Form DS-2019 | 5-7 |\n| Form I-20 | 5-7 |\n| I-94 Record** | 5-7 |\n| Orientation Data Form | 5-7 |\n| Passport | 5-7 |\n| Visa Stamp | 5-7 |\n** Processing times are for ISS e-form processing. If your I-94 needs a correction please note corrections take 2-4 weeks due to CBP processing times.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "E-form Processing Times"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Determining Processing Times"
13
+ },
14
+ {
15
+ "level": 3,
16
+ "text": "Example: Counting 10 business days"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "F-1 General E-form Processing Times"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "F-1 OPT E-form Processing Times"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "J-1 E-form Processing Times"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "ISS Check-in Processing Times"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "New Students"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Activities"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Immigration & Visa"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Social Security Card & Income Tax"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Life in Buffalo"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "About Us"
57
+ },
58
+ {
59
+ "level": 1,
60
+ "text": "Your Privacy is Important To Us."
61
+ }
62
+ ],
63
+ "faqs": [],
64
+ "important_links": [
65
+ {
66
+ "text": "3/31/25Your I-20 & Next Steps",
67
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
68
+ },
69
+ {
70
+ "text": "4/18/25Visa Information",
71
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
72
+ },
73
+ {
74
+ "text": "2/10/25E-form Processing Times",
75
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
76
+ },
77
+ {
78
+ "text": "2/10/25Financial Documentation",
79
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
80
+ },
81
+ {
82
+ "text": "2/10/25Information Sessions",
83
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
84
+ },
85
+ {
86
+ "text": "E-form Processing Times",
87
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
88
+ },
89
+ {
90
+ "text": "Financial Documentation",
91
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
92
+ },
93
+ {
94
+ "text": "F-1 General E-form Processing Times",
95
+ "url": "#title_0_copy_copy_co"
96
+ },
97
+ {
98
+ "text": "F-1 OPT E-form Processing Times",
99
+ "url": "#title_0_copy_copy_co_1918805256"
100
+ },
101
+ {
102
+ "text": "J-1 E-form Processing Times",
103
+ "url": "#title_0_copy_copy_co_1027843613"
104
+ },
105
+ {
106
+ "text": "within acceptable dates as listed on our CPT page)",
107
+ "url": "/international-student-services/immigration-visa/f-1-student/curricular-practical-training--cpt-.html"
108
+ },
109
+ {
110
+ "text": "3/31/25Your I-20 & Next Steps",
111
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
112
+ },
113
+ {
114
+ "text": "4/18/25Visa Information",
115
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
116
+ },
117
+ {
118
+ "text": "2/10/25Information Sessions",
119
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
120
+ },
121
+ {
122
+ "text": "2/10/25E-form Processing Times",
123
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
124
+ },
125
+ {
126
+ "text": "2/10/25Financial Documentation",
127
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
128
+ }
129
+ ],
130
+ "categories": [
131
+ "immigration",
132
+ "employment"
133
+ ],
134
+ "scraped_at": "2025-04-26T01:20:22.114870",
135
+ "path_hierarchy": [
136
+ "international-student-services",
137
+ "immigration-visa",
138
+ "e-form-processing-times.html"
139
+ ],
140
+ "domain": "www.buffalo.edu"
141
+ }
data/raw/0021_www_buffalo_edu.json ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/financial-documentation.html",
3
+ "title": "Financial Documentation - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nIssuing new, extended or dependent I-20\u2019s & DS-2019\u2019s requires current financial documentation that meets specific standards.\n| Documentation | Acceptable |\n|---|---|\n| Bank Statements/Letters | Yes* |\n| Certificate of Deposit (CD) Statements | Yes* |\n| Chartered Accountant Statement | No |\n| Credit Card Statements | No |\n| Employer Letter/Salary Statement | No |\n| Line of Credit/Loan Letters | Yes* |\n| Proof of Tuition Scholarship/Assistantship | Yes* |\n| Proof of Adjunct Teaching Appointment at UB | Yes |\n| National Letter of Intent (NLI) | Yes |\n| Stock Market Statement | No |\n| Valuation Statements (Jewelry, Gold, Property) | No |\nBelow is sample language to be used if the financial documentation submitted is not in your own name.\nThe letter must be signed by the sponsor and must include the actual signature (not typed) of the person providing support. The letter must be clear; scanned copies are acceptable. ISS does not need the original letter mailed to the office.\nDATE\nI, NAME OF SPONSOR, agree to financially support NAME OF STUDENT, for their tuition, fees and living expenses incurred while a student at the University at Buffalo. Attached please find my financial documents indicating the amount of funding available to NAME OF STUDENT.\nIf additional information is needed, please do not hesitate to contact me.\nSincerely,\n[INCLUDE SIGNATURE OF SPONSOR]\nTYPE NAME OF SPONSOR\nInclude sponsor\u2019s home address\nInclude sponsor\u2019s phone number",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Financial Documentation"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Document Types"
13
+ },
14
+ {
15
+ "level": 3,
16
+ "text": "*Additional Information"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Document Requirements"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Sample Sponsor Letter"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "Sample Sponsor Letter"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "New Students"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Activities"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Immigration & Visa"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Social Security Card & Income Tax"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Life in Buffalo"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "About Us"
53
+ },
54
+ {
55
+ "level": 1,
56
+ "text": "Your Privacy is Important To Us."
57
+ }
58
+ ],
59
+ "faqs": [],
60
+ "important_links": [
61
+ {
62
+ "text": "3/31/25Your I-20 & Next Steps",
63
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
64
+ },
65
+ {
66
+ "text": "4/18/25Visa Information",
67
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
68
+ },
69
+ {
70
+ "text": "2/10/25E-form Processing Times",
71
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
72
+ },
73
+ {
74
+ "text": "2/10/25Financial Documentation",
75
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
76
+ },
77
+ {
78
+ "text": "2/10/25Information Sessions",
79
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
80
+ },
81
+ {
82
+ "text": "E-form Processing Times",
83
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
84
+ },
85
+ {
86
+ "text": "Financial Documentation",
87
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
88
+ },
89
+ {
90
+ "text": "Document Types",
91
+ "url": "#title_804082812"
92
+ },
93
+ {
94
+ "text": "Document Requirements",
95
+ "url": "#title_504513248"
96
+ },
97
+ {
98
+ "text": "3/31/25Your I-20 & Next Steps",
99
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
100
+ },
101
+ {
102
+ "text": "4/18/25Visa Information",
103
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Information Sessions",
107
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
108
+ },
109
+ {
110
+ "text": "2/10/25E-form Processing Times",
111
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
112
+ },
113
+ {
114
+ "text": "2/10/25Financial Documentation",
115
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
116
+ }
117
+ ],
118
+ "categories": [
119
+ "immigration",
120
+ "fees",
121
+ "housing"
122
+ ],
123
+ "scraped_at": "2025-04-26T01:20:24.654657",
124
+ "path_hierarchy": [
125
+ "international-student-services",
126
+ "immigration-visa",
127
+ "financial-documentation.html"
128
+ ],
129
+ "domain": "www.buffalo.edu"
130
+ }
data/raw/0022_www_buffalo_edu.json ADDED
@@ -0,0 +1,271 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/estimated-expenses.html",
3
+ "title": "Estimated Expenses - International Student Services - University at Buffalo",
4
+ "content": "Requesting a new, extended, or dependent I-20 or DS-2019? International Student Services requires current, valid financial documentation. Find out how much financial support you will need to show.\nThese figures are estimates; the final amount on your I-20/DS-2019 may vary slightly based on your specific program. Actual costs will vary depending on degree, program and personal spending. Visit Student Accounts for more information.\nHow to Use This Page\nTo determine your estimate you must consider:\nWhat are you requesting?\nIf you are extending your I-20 or DS-2019 the length of the stay impacts how many semesters you need to finance.\nIf you are adding a dependent the default estimate is based on one year of expenses.\nDo you need enrollment?\nIf yes you must know how many credits you will take for each semester covered in the estimate.\nIf you will be below full-time enrollment you must consider how you will maintain status (reduced course load, full-time certification, etc.)\nIn many cases Summer enrollment is optional. If you will not enroll in Summer you do not need to include Summer tuition in your estimate. Summer estimates are provided for convenience for those who do enroll.\nIf Summer is your first or final semester enrollment is required to maintain status.\nUse the below estimates based on your academic degree level and planned credit loads to determine your estimated tuition costs.\nAdd living expenses for each semester.\nAdd dependent expenses for each semester based on the number and type of F-2/J-2 dependents currently on your SEVIS record.\nIf you have a dependent on your SEVIS record who is no longer in the US in F-2/J-2 status contact ISS so we can update your SEVIS record.\nUsing your estimated expenses gather financial documentation and submit your request to ISS on UB Global. For detailed information on acceptable documentation please read our Financial Documentation page.\nOn Post-Completion OPT, STEM OPT, or Post-Graduation Academic Training?\nIf you're in F/J status after graduation and no longer enrolled in courses you only need to determine estimated living expenses for yourself and any dependents on your SEVIS record. In most cases you will need estimated living expenses for 1 year.\nMaintaining F/J Status\nBelow are example estimates based on common credit loads for students based on full-time enrollment, enrollment with a Reduced Course Load, enrollment with an assistantship, or enrollment with full-time certification. When planning your enrollment for any semester be sure you understand how to maintain status and how any enrollment under 12 credits must be accompanied by additional approvals.\nEstimated Expenses 2024-2025*\nFull Time Enrollment - 12 credits Fall & Spring, 6 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$33,800\n$16,900\n$16,900\n$8,500\nPart Time Enrollment - 6 credits Fall & Spring, 3 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$17,000\n$8,500\n$8,500\n$4,200\nPart Time Enrollment- 1 credit Fall, Spring, & Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$3,000\n$1,500\n$1,500\n$1,500\nIf your full-time certification (FTC) or assistantship information does not yet appear in HUB for a future semester, we will request proof of full-time funding for that semester (12+ credits).\nGeneral Graduate Programs\nFull Time Enrollment - 12 credits Fall & Spring, 6 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$30,600\n$15,300\n$15,300\n$7,700\nWith Assistantship - 9 credits Fall & Spring, 3 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$24,000\n$12,000\n$12,000\n$3,800\nWith Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$3,000\n$1,500\n$1,500\n$1,500\nGraduate Management Programs\nFull Time Enrollment - 12 credits Fall & Spring, 6 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$32,400\n$16,200\n$16,200\n$8,100\nWith Assistantship - 9 credits Fall & Spring, 3 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$25,000\n$12,500\n$12,500\n$4,100\nWith Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$3,000\n$1,500\n$1,500\n$1,500\nGraduate Architecture Programs\nFull Time Enrollment - 12 credits Fall & Spring, 6 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$32,800\n$16,400\n$16,400\n$8,200\nWith Assistantship - 9 credits Fall & Spring, 3 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$25,000\n$12,500\n$12,500\n$4,100\nWith Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$3,000\n$1,500\n$1,500\n$1,500\nIf your full-time certification or assistantship information does not yet appear in HUB for a future semester, we will request proof of full-time funding for that semester (12+ credits).\nLaw Programs\nFull Time Enrollment - 12 credits Fall & Spring, 6 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$37,600\n$18,800\n$18,800\n$9,400\nWith Assistantship - 9 credits Fall & Spring, 3 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$29,000\n$14,500\n$14,500\n$4,700\nWith Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$3,200\n$1,600\n$1,600\n$1,500\nPharmacy Programs\nFull Time Enrollment - 12 credits Fall & Spring, 6 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$44,600\n$22,300\n$22,300\n$11,100\nWith Assistantship - 9 credits Fall & Spring, 3 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$34,000\n$17,000\n$17,000\n$5,600\nWith Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$4,000\n$2,000\n$2,000\n$2,000\nPhysical Therapy Doctorate\nFull Time Enrollment - 12 credits Fall & Spring, 6 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$39,000\n$19,500\n$19,500\n$9,600\nWith Assistantship - 9 credits Fall & Spring, 3 credits Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$29,000\n$14,500\n$14,500\n$4,800\nWith Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nTuition & Fees\n$3,200\n$1,600\n$1,600\n$1,600\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nLiving Expenses\n$17,00\n$8,500\n$8,500\n$5,500\nAdd the below expenses to your estimated expense costs based on the number of dependents included.\nDependents\nAcademic Year (9 months)\nFall (4 months)\nSpring (5 months)\nSummer (3 months)\nSpouse\n$7,000\n$3,500\n$3,500\n$2,100\nChild\n$5,000\n$2,500\n$2,500\n$1,600\nImportant Considerations:\nMaintaining Status\nIn order to maintain status you must study full-time and make normal progress toward your degree. For details on enrollment requirements to maintain your status please refer to:\nFees include the student activity fee, comprehensive fees, the international student fee, and international student health insurance.\nFood and housing (also known as \u201cboard\u201d) costs are based on average costs; this cost will vary slightly depending on your personal living arrangements and lifestyle.\nSome programs, such as architecture, art programs, and health-related programs may have significantly higher costs for supplies.\n*All above estimated expenses are reviewed annually and are subject to change. Increases can be expected.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Estimated Expenses"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "How to Use This Page"
13
+ },
14
+ {
15
+ "level": 3,
16
+ "text": "Step 1: Planning"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "Step 2: Adding Up Estimated Costs"
21
+ },
22
+ {
23
+ "level": 3,
24
+ "text": "Step 3: Submit Your Request to ISS"
25
+ },
26
+ {
27
+ "level": 3,
28
+ "text": "On Post-Completion OPT, STEM OPT, or Post-Graduation Academic Training?"
29
+ },
30
+ {
31
+ "level": 3,
32
+ "text": "Maintaining F/J Status"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Estimated Expenses 2024-2025*"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "Undergraduate Tuition Estimates"
41
+ },
42
+ {
43
+ "level": 3,
44
+ "text": "Full Time Enrollment - 12 credits Fall & Spring, 6 credits Summer"
45
+ },
46
+ {
47
+ "level": 3,
48
+ "text": "Part Time Enrollment - 6 credits Fall & Spring, 3 credits Summer"
49
+ },
50
+ {
51
+ "level": 3,
52
+ "text": "Part Time Enrollment- 1 credit Fall, Spring, & Summer"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "Graduate Tuition Estimates"
57
+ },
58
+ {
59
+ "level": 3,
60
+ "text": "General Graduate Programs"
61
+ },
62
+ {
63
+ "level": 4,
64
+ "text": "Full Time Enrollment - 12 credits Fall & Spring, 6 credits Summer"
65
+ },
66
+ {
67
+ "level": 4,
68
+ "text": "With Assistantship - 9 credits Fall & Spring, 3 credits Summer"
69
+ },
70
+ {
71
+ "level": 4,
72
+ "text": "With Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer"
73
+ },
74
+ {
75
+ "level": 3,
76
+ "text": "Graduate Management Programs"
77
+ },
78
+ {
79
+ "level": 4,
80
+ "text": "Full Time Enrollment - 12 credits Fall & Spring, 6 credits Summer"
81
+ },
82
+ {
83
+ "level": 4,
84
+ "text": "With Assistantship - 9 credits Fall & Spring, 3 credits Summer"
85
+ },
86
+ {
87
+ "level": 4,
88
+ "text": "With Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer"
89
+ },
90
+ {
91
+ "level": 3,
92
+ "text": "Graduate Architecture Programs"
93
+ },
94
+ {
95
+ "level": 4,
96
+ "text": "Full Time Enrollment - 12 credits Fall & Spring, 6 credits Summer"
97
+ },
98
+ {
99
+ "level": 4,
100
+ "text": "With Assistantship - 9 credits Fall & Spring, 3 credits Summer"
101
+ },
102
+ {
103
+ "level": 4,
104
+ "text": "With Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer"
105
+ },
106
+ {
107
+ "level": 2,
108
+ "text": "Professional Tuition Estimates (Law, Pharmacy, etc.)"
109
+ },
110
+ {
111
+ "level": 3,
112
+ "text": "Law Programs"
113
+ },
114
+ {
115
+ "level": 4,
116
+ "text": "Full Time Enrollment - 12 credits Fall & Spring, 6 credits Summer"
117
+ },
118
+ {
119
+ "level": 4,
120
+ "text": "With Assistantship - 9 credits Fall & Spring, 3 credits Summer"
121
+ },
122
+ {
123
+ "level": 4,
124
+ "text": "With Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer"
125
+ },
126
+ {
127
+ "level": 3,
128
+ "text": "Pharmacy Programs"
129
+ },
130
+ {
131
+ "level": 4,
132
+ "text": "Full Time Enrollment - 12 credits Fall & Spring, 6 credits Summer"
133
+ },
134
+ {
135
+ "level": 4,
136
+ "text": "With Assistantship - 9 credits Fall & Spring, 3 credits Summer"
137
+ },
138
+ {
139
+ "level": 4,
140
+ "text": "With Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer"
141
+ },
142
+ {
143
+ "level": 3,
144
+ "text": "Physical Therapy Doctorate"
145
+ },
146
+ {
147
+ "level": 4,
148
+ "text": "Full Time Enrollment - 12 credits Fall & Spring, 6 credits Summer"
149
+ },
150
+ {
151
+ "level": 4,
152
+ "text": "With Assistantship - 9 credits Fall & Spring, 3 credits Summer"
153
+ },
154
+ {
155
+ "level": 4,
156
+ "text": "With Full-Time Certification (FTC) in HUB - 1 credit Fall, Spring, & Summer"
157
+ },
158
+ {
159
+ "level": 2,
160
+ "text": "F-1/J-1 Living Expense Estimates"
161
+ },
162
+ {
163
+ "level": 2,
164
+ "text": "Dependent Expense Estimates"
165
+ },
166
+ {
167
+ "level": 3,
168
+ "text": "Add the below expenses to your estimated expense costs based on the number of dependents included."
169
+ },
170
+ {
171
+ "level": 2,
172
+ "text": "Important Considerations:"
173
+ },
174
+ {
175
+ "level": 2,
176
+ "text": "New Students"
177
+ },
178
+ {
179
+ "level": 2,
180
+ "text": "Activities"
181
+ },
182
+ {
183
+ "level": 2,
184
+ "text": "Immigration & Visa"
185
+ },
186
+ {
187
+ "level": 2,
188
+ "text": "Social Security Card & Income Tax"
189
+ },
190
+ {
191
+ "level": 2,
192
+ "text": "Life in Buffalo"
193
+ },
194
+ {
195
+ "level": 2,
196
+ "text": "About Us"
197
+ },
198
+ {
199
+ "level": 1,
200
+ "text": "Your Privacy is Important To Us."
201
+ }
202
+ ],
203
+ "faqs": [],
204
+ "important_links": [
205
+ {
206
+ "text": "3/31/25Your I-20 & Next Steps",
207
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
208
+ },
209
+ {
210
+ "text": "4/18/25Visa Information",
211
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
212
+ },
213
+ {
214
+ "text": "2/10/25E-form Processing Times",
215
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
216
+ },
217
+ {
218
+ "text": "2/10/25Financial Documentation",
219
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
220
+ },
221
+ {
222
+ "text": "2/10/25Information Sessions",
223
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
224
+ },
225
+ {
226
+ "text": "E-form Processing Times",
227
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
228
+ },
229
+ {
230
+ "text": "Financial Documentation",
231
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
232
+ },
233
+ {
234
+ "text": "Financial Documentation",
235
+ "url": "http://www.buffalo.edu/international-student-services/immigration-visa/financial-documentation.html"
236
+ },
237
+ {
238
+ "text": "3/31/25Your I-20 & Next Steps",
239
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
240
+ },
241
+ {
242
+ "text": "4/18/25Visa Information",
243
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
244
+ },
245
+ {
246
+ "text": "2/10/25Information Sessions",
247
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
248
+ },
249
+ {
250
+ "text": "2/10/25E-form Processing Times",
251
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
252
+ },
253
+ {
254
+ "text": "2/10/25Financial Documentation",
255
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
256
+ }
257
+ ],
258
+ "categories": [
259
+ "immigration",
260
+ "employment",
261
+ "fees",
262
+ "housing"
263
+ ],
264
+ "scraped_at": "2025-04-26T01:20:27.262154",
265
+ "path_hierarchy": [
266
+ "international-student-services",
267
+ "immigration-visa",
268
+ "estimated-expenses.html"
269
+ ],
270
+ "domain": "www.buffalo.edu"
271
+ }
data/raw/0023_www_buffalo_edu.json ADDED
@@ -0,0 +1,129 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/u-s--laws-and-your-rights.html",
3
+ "title": "U.S. Laws and Your Rights - International Student Services - University at Buffalo",
4
+ "content": "[University at Buffalo (UB)](//www.buffalo.edu/)\nIt\u2019s important to understand the laws based on where you live and study. Here, you'll find information about what you can and can't do, and how to stay safe. Some of the words might be new, but don't worry \u2013 if you're not sure about something, ask ISS or other campus offices for help understanding.\nAs someone visiting the United States from another country, you have rights to keep you safe. But there are also things you need to be careful about when you join protests or demonstrations.\nIf you get arrested, charged, and found guilty while participating in a protest, it could affect your ability to stay in the country or apply for visas later on. For example, if the police tell everyone to leave, and you don't go quickly enough, you could end up getting arrested. Being found guilty means you broke a state or federal law. Your immigration status may depend on avoiding legal trouble by following all laws.\nIf you are arrested, it will be very important to consult with a criminal attorney to advise and support you during any court proceedings. While a court will assign an individual an attorney if they cannot afford one, not all attorneys are familiar with the impact on immigration status of an arrest or acceptance of certain plea decisions.\nIt is also important that you continue to maintain your immigration status. International students need to remember that their purpose for being in the U.S. is to be a full-time student, and they should continue to attend all classes.\nComplying with [University rules and codes of conduct](https://www.buffalo.edu/studentlife/life-on-campus/community/rules.html) are a part of maintaining status.\nDid you know that UB has its own policy for assembly and protest? At UB, you have the right to protest and gather together, but you must always follow the rules from the university and law enforcement.\nProtest and free speech rights in the United States are outlined by the U.S. Constitution. The U.S. Constitution's First Amendment protects people's rights to gather for protests (freedom of assembly), speak out (freedom of speech), and ask the government for changes without reprisal (right to petition).\nThese rights aren't only for U.S. citizens. They also protect visitors from other countries who join lawful public demonstrations and protests. Know your rights as a noncitizen and learn [how to respond to immigration questions](https://www.aclu.org/know-your-rights/immigrants-rights#law-enforcement-asks-about-my-immigration-status) if you are stopped by police or other government officials.\nFederal laws apply to everyone in the United States. State and local laws apply to people who live or work in a particular state, county, or town. As an international student you are expected to comply with all laws and regulations that apply to your situation, including federal laws. Failure to do so can result in a violation of status.\nWhile New York and many U.S. states have recently changed laws related to marijuana, it is still considered a controlled substance by the federal government. International students who possess or use cannabis products may be subject to severe consequences (for example, visa refusal or revocation). In this case, where state and federal law conflict, international students are always subject to federal law. It may also be helpful to review [UB's policy on alcohol & drugs](https://www.buffalo.edu/administrative-services/policy-compliance-and-internal-controls/policy/ub-policy-lib/alcoholic-beverages-drugs-narcotics.html).",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "U.S. Laws and Your Rights"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "Protests and Your Rights"
13
+ },
14
+ {
15
+ "level": 3,
16
+ "text": "Potential Impact on Your Immigration Status"
17
+ },
18
+ {
19
+ "level": 3,
20
+ "text": "UB Picketing & Assembling Policy"
21
+ },
22
+ {
23
+ "level": 3,
24
+ "text": "Your Rights"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "State Law vs. Federal Law"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "Additional Resources"
33
+ },
34
+ {
35
+ "level": 2,
36
+ "text": "Disclaimer"
37
+ },
38
+ {
39
+ "level": 2,
40
+ "text": "New Students"
41
+ },
42
+ {
43
+ "level": 2,
44
+ "text": "Activities"
45
+ },
46
+ {
47
+ "level": 2,
48
+ "text": "Immigration & Visa"
49
+ },
50
+ {
51
+ "level": 2,
52
+ "text": "Social Security Card & Income Tax"
53
+ },
54
+ {
55
+ "level": 2,
56
+ "text": "Life in Buffalo"
57
+ },
58
+ {
59
+ "level": 2,
60
+ "text": "About Us"
61
+ },
62
+ {
63
+ "level": 1,
64
+ "text": "Your Privacy is Important To Us."
65
+ }
66
+ ],
67
+ "faqs": [],
68
+ "important_links": [
69
+ {
70
+ "text": "3/31/25Your I-20 & Next Steps",
71
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
72
+ },
73
+ {
74
+ "text": "4/18/25Visa Information",
75
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
76
+ },
77
+ {
78
+ "text": "2/10/25E-form Processing Times",
79
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
80
+ },
81
+ {
82
+ "text": "2/10/25Financial Documentation",
83
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
84
+ },
85
+ {
86
+ "text": "2/10/25Information Sessions",
87
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
88
+ },
89
+ {
90
+ "text": "E-form Processing Times",
91
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
92
+ },
93
+ {
94
+ "text": "Financial Documentation",
95
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
96
+ },
97
+ {
98
+ "text": "3/31/25Your I-20 & Next Steps",
99
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
100
+ },
101
+ {
102
+ "text": "4/18/25Visa Information",
103
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
104
+ },
105
+ {
106
+ "text": "2/10/25Information Sessions",
107
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
108
+ },
109
+ {
110
+ "text": "2/10/25E-form Processing Times",
111
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
112
+ },
113
+ {
114
+ "text": "2/10/25Financial Documentation",
115
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
116
+ }
117
+ ],
118
+ "categories": [
119
+ "immigration",
120
+ "employment"
121
+ ],
122
+ "scraped_at": "2025-04-26T01:20:29.750621",
123
+ "path_hierarchy": [
124
+ "international-student-services",
125
+ "immigration-visa",
126
+ "u-s--laws-and-your-rights.html"
127
+ ],
128
+ "domain": "www.buffalo.edu"
129
+ }
data/raw/0024_www_buffalo_edu.json ADDED
@@ -0,0 +1,108 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "url": "https://www.buffalo.edu/international-student-services/immigration-visa/immigration---visa-links.html",
3
+ "title": "Immigration & Visa Links - International Student Services - University at Buffalo",
4
+ "content": "Completing your DS-160 and looking for assistance? Be sure to review the information on the Department of State's website FAQs and application instructions.\nImmigration & Visa Links\nUse these links to quickly and easily find the information you need.",
5
+ "headings": [
6
+ {
7
+ "level": 1,
8
+ "text": "Immigration & Visa Links"
9
+ },
10
+ {
11
+ "level": 2,
12
+ "text": "New Students"
13
+ },
14
+ {
15
+ "level": 2,
16
+ "text": "Activities"
17
+ },
18
+ {
19
+ "level": 2,
20
+ "text": "Immigration & Visa"
21
+ },
22
+ {
23
+ "level": 2,
24
+ "text": "Social Security Card & Income Tax"
25
+ },
26
+ {
27
+ "level": 2,
28
+ "text": "Life in Buffalo"
29
+ },
30
+ {
31
+ "level": 2,
32
+ "text": "About Us"
33
+ },
34
+ {
35
+ "level": 1,
36
+ "text": "Your Privacy is Important To Us."
37
+ }
38
+ ],
39
+ "faqs": [],
40
+ "important_links": [
41
+ {
42
+ "text": "3/31/25Your I-20 & Next Steps",
43
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
44
+ },
45
+ {
46
+ "text": "4/18/25Visa Information",
47
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
48
+ },
49
+ {
50
+ "text": "2/10/25E-form Processing Times",
51
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
52
+ },
53
+ {
54
+ "text": "2/10/25Financial Documentation",
55
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
56
+ },
57
+ {
58
+ "text": "2/10/25Information Sessions",
59
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
60
+ },
61
+ {
62
+ "text": "E-form Processing Times",
63
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
64
+ },
65
+ {
66
+ "text": "Financial Documentation",
67
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
68
+ },
69
+ {
70
+ "text": "application instructions",
71
+ "url": "https://travel.state.gov/content/travel/en/us-visas/visa-information-resources/forms/ds-160-online-nonimmigrant-visa-application.html"
72
+ },
73
+ {
74
+ "text": "U.S. Department of State Visa Information",
75
+ "url": "https://travel.state.gov/content/visas/en.html"
76
+ },
77
+ {
78
+ "text": "3/31/25Your I-20 & Next Steps",
79
+ "url": "/international-student-services/for-new-students/your-i-20---next-steps.html"
80
+ },
81
+ {
82
+ "text": "4/18/25Visa Information",
83
+ "url": "/international-student-services/for-new-students/immigration-and-visas.html"
84
+ },
85
+ {
86
+ "text": "2/10/25Information Sessions",
87
+ "url": "/international-student-services/workshops-trips-events/workshops.html"
88
+ },
89
+ {
90
+ "text": "2/10/25E-form Processing Times",
91
+ "url": "/international-student-services/immigration-visa/e-form-processing-times.html"
92
+ },
93
+ {
94
+ "text": "2/10/25Financial Documentation",
95
+ "url": "/international-student-services/immigration-visa/financial-documentation.html"
96
+ }
97
+ ],
98
+ "categories": [
99
+ "immigration"
100
+ ],
101
+ "scraped_at": "2025-04-26T01:20:32.544631",
102
+ "path_hierarchy": [
103
+ "international-student-services",
104
+ "immigration-visa",
105
+ "immigration---visa-links.html"
106
+ ],
107
+ "domain": "www.buffalo.edu"
108
+ }